簡體   English   中英

在aspx頁面中顯示DataTable信息

[英]Display DataTable information in aspx page

我是Asp.net的新手。 我創建了一個登錄頁面,該頁面檢索DataTable中的用戶信息。 我將此信息存儲在會話變量中。

這是代碼:

 using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data;
using System.Web.Configuration; 


public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}
protected void btnSubmit_Click(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["dbconnection"].ConnectionString);
    con.Open();
    SqlCommand cmd = new SqlCommand("select * from UserTable where UserName =@username and Password=@password", con);
    cmd.Parameters.AddWithValue("@username", txtUserName.Text);
    cmd.Parameters.AddWithValue("@password", txtPWD.Text);
    SqlDataAdapter da = new SqlDataAdapter(cmd);
    DataTable dt = new DataTable();
    da.Fill(dt);
    if (dt.Rows.Count > 0)
    {
        Session["userdata"] = dt;
        Response.Redirect("Home.aspx");
    }
    else
    {
        ClientScript.RegisterStartupScript(Page.GetType(), "validation", "<script language='javascript'>alert('Invalid Username and Password')</script>");
    }
}
}

現在要在Home.aspx中顯示DataTable信息。 我怎樣才能做到這一點?

使用gridview。

<asp:GridView ID="GridView1" runat="server">
</asp:GridView>

在運行時,僅將其呈現為表。

然后

GridView1.DataSource=Session[userdata];
GridView1.DataBind();

Home.aspx

<asp:Label ID="lblUserName" runat="server" />

背后的代碼

protected void Page_Load(object sender, EventArgs e)
{

    DataTable dt=new DataTable();
    dt= (DataTable)Session["userdata"] ;
    lblUserName.Text=dt.Rows[0]["UserName"].ToString();//your cloumn name;

}

您可以使用Home.aspx上的以下內容之一檢索數據表

DataTable dtTable = Session["userdata"] as DataTable

要么

DataTable dtTable= (DataTable)Session["userdata"];

要提取數據,

dtTable.rows[rowindex][columnindex] // Ex: dtTable.rows[0][0]

或者如果您知道列名

dtTable.rows[rowindex][columnname] // Ex: dtTable.rows[0]["yourColumnName"] 

Home.aspx您可以執行以下操作

protected void Page_Load(object sender, EventArgs e)
{
     DataTable dt = (DataTable)Session["userdata"]
     gridview.DataSource =dt;
     gridview.DataBind();
}

在您的Home.aspx中,添加您想要顯示的有關用戶的信息的標簽。 假設您要顯示用戶名,然后添加以下內容:

<asp:Label ID="lblUserName" runat="server" />

在后面的代碼中,添加以下內容:

protected void Page_Load(object sender, EventArgs e)
{
    DataTable dt = (DataTable)Session["userdata"] ;
    lblUserName.Text = dt.Rows[0]["UserName"].ToString();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM