用戶登錄。用戶可以屬於許多不同的ServiceAreas,我試圖嘗試將用戶的詳細信息存儲在包含用戶所有信息的Session
中。當它試圖添加相同的key
時,foreach
不斷髮生錯誤。這是我的第一個錯誤。將用戶詳細信息存儲在字典中
Q1。我將如何阻止這種情況的發生。 Q2302。我能否將用戶詳細信息存儲在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
?
什麼是錯誤?密鑰已經存在? – 2013-03-07 13:55:43
是的,它繼續循環循環 – StudentRik 2013-03-07 13:56:20
你爲什麼要迭代serviceArea而不使用迭代值? – 2013-03-07 13:56:35