我想查看从sql数据库到gridview的特定登录客户的配置文件(详细信息)

本文关键字:登录 客户 配置文件 详细信息 gridview sql 数据库 | 更新日期: 2023-09-27 18:00:17

这是我的viewprofile.aspx代码,绑定将在这里进行。我计划将sql中的数据绑定到我的gridview,但它显示的是所有数据(来自sql),而不是特定登录客户的数据。这是我的代码:

protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["New"] != null)
            {
                bindgrid();
            }
        }
public void bindgrid()
        {
            SqlConnection conn = new SqlConnection("Data Source = 'PAULO'; Initial Catalog=ShoppingCartDB;Integrated Security =True");
            SqlCommand cmd = new SqlCommand("select * from UserData WHERE Username = Username ", conn);
        SqlDataAdapter da = new SqlDataAdapter("", conn);
        da.SelectCommand = new SqlCommand("select * from UserData WHERE Username = Username", conn);
        DataSet ds = new DataSet();
        da.Fill(ds, "data");
        GridView1.DataSource = ds.Tables[0].DefaultView;
        GridView1.DataBind();
    }

我想查看从sql数据库到gridview的特定登录客户的配置文件(详细信息)

它显示了(来自sql的)所有数据,而不是特定登录客户

这是因为SELECT查询中的WHERE条件表示WHERE Username = UsernameTAUTOLOGY,并且将始终是TRUE,因此获取所有行。

本质上,您的SELECT查询只是在进行

select * from UserData;

您需要在WHERE条件中指定已登录的客户ID才能获得他/她的记录。

考虑到您的ASP.NET代码中有一个名为Username的变量,您在其中存储了当前登录的客户名称;然后像下面的一样更改代码

SqlCommand cmd = new SqlCommand("select * from UserData WHERE Username = @Username ", conn);
cmd.Parameters.AddWithValue("@Username", Username);
da.SelectCommand = cmd;