C# · 12月 23, 2021

c# – ASP.NET Session和LINQ

嗨,大家好!
我有一个关于我正在进行的项目的问题.
我有这行代码: var query = from user in dwe.UsersTable where user.LoginName.Equals(username@R_414_2419@.Text) && user.Password.Equals(pw@R_414_2419@.Text) select user; if (query.Count() == 1) { Session[“User”] = username@R_414_2419@.Text; Response.Redirect(“Edit.aspx”); } else { LabelError.Text = “Error try again”; } }

在我的“UsersTable”中,我有一个名为“UserID”的coulmn.我想将“userID”作为会话发送到重定向页面(Edit.aspx),userID必须等于用户名和密码之间的比较结果.

干杯:-)

解决方法 你只需要写下来 var query = (from user in dwe.UsersTable where user.LoginName.Equals(username@R_414_2419@.Text) && user.Password.Equals(pw@R_414_2419@.Text) select user).FirstOrDefault();if(query!=null){ Session[“User”] = query.UserID; Response.Redirect(“Edit.aspx”); }else{ LabelError.Text = “Error try again”;}

不需要编写使用Count方法的代码而不是这样只需使用FirstOrDefault就可以轻松地获得结果.