如何根据当前登录用户显示数据?

How to display data based on current logged user?

如何显示根据当前登录用户从数据库中检索到的数据?我知道我应该声明 id,但我真的不知道如何...

我在 SQL 中有 2 个表。

用户:

编号 ||名称 || Last_Name ||日期 ||

列表

编号 ||产品 ||说明 || user_id

private void BindGridView()
    {  
string constr = ConfigurationManager.ConnectionStrings["strConn"].ConnectionString;

            using (SqlConnection conn = new SqlConnection(constr))
            {

                using (SqlCommand cmd = new SqlCommand())
                { 
                    cmd.Connection = conn;
                    cmd.CommandText = @"SELECT * From List where ID = @ID";
                    cmd.Parameters.AddWithValue("@ID", ?);

                    using (SqlDataAdapter ad = new SqlDataAdapter(cmd))
                    {
                        DataTable dt = new DataTable();
                        ad.Fill(dt);
                        GridView1.DataSource = dt;
                        GridView1.DataBind();
                    }
                }     
        }
    }

根据您的 table query 应该是

select * from list where user_id = id

这里id是传给方法

userid

例如private void BindGridView(int id)

另一种方法是使用 session

要在登录后存储 ID,您必须将其存储在会话中

session["UserId"] = userid;

你可以像

那样在函数中使用它
int userid = Convert.ToInt32(session["UserId"]);
cmd.CommandText = "SELECT * FROM list where user_id = " + userid + "";

也不要忘记在执行查询后使用conn.Open()conn.Close()