用户登录。用户可以属于许多不同的 ServiceAreas 我试图尝试将用户的详细信息存储在一个Session
包含用户所有信息的文件夹中。当foreach
它尝试添加相同的key
. 这是我的第一个错误。
Q1。我将如何阻止这种情况发生。
Q2。我能否将用户详细信息存储在Session
他们属于 4 个服务区域还是 1 个?
var user = (from u in db.tbl_UserServiceAreaDetails
where u.tbl_User.UserName.Equals(txt_LoginName.Text)
&& u.tbl_User.Password.Equals(txt_Password.Text)
select u).FirstOrDefault();
if (user != null)
{
var serviceAreaID = user.serviceAreaID;
var serviceArea = user.tbl_ServiceArea.ServiceArea;
UserClass userDetails = new UserClass();
userDetails.UserName = user.tbl_User.UserName;
foreach (var item in serviceArea)
{
userDetails.ServiceArea.Add(serviceAreaID, serviceArea);
}
Session["User"] = userDetails;
UserClass
class UserClass
{
public string UserName { get; set; }
public Dictionary<int, string> ServiceArea = new Dictionary<int, string>();
}
我需要if item. Something
为 Q1 做一个吗?