我正在使用Visual Studio并在我的Default.aspx网络表单上使用以下page_load函数:
if (IsPostBack == false)
{
//Display all records on the form load
DisplayCars("");
我有一个用户,我可以在其中获取用户名(我曾经将其添加为特定数据记录的“创建者”)。我想使用此用户名仅显示用户名= ACar.Creator
的汽车我该怎么做呢?我已经完成了所有设置。
我需要以下内容:
if (User.Identity.Name == ACar.Creator) {
show this record
}
但我不知道aspx / sql
中的语法由于
答案 0 :(得分:0)
您应该通过传递用户名
在数据库中实际执行此操作public DataTable GetUserRecord(string userName)
{
DataTable dt = new DataTable();
SqlConnection conn = new SqlConnection("connection string to database");
using(conn)
{
string sql = "SELECT car.CarName, car.Model FROM car WHERE car.Creator = @UserName";
SqlCommand comm = new SqlCommand(sql, conn);
comm.Parameters.AddWithValue("@UserName", userName);
dt.Load(comm.ExecuteReader());
}
return dt;
}
从您的信息页
protected void Page_Load(object sender, Eventargs e)
{
DataTable dt = GetUserRecord(User.Identity.Name);
if(dt.Rows.Count > 0)
{
string firstRowCarName = dt.Rows[0]["CarName"];
//etc
}
}