C# 如何在一个会话中存储多个列表?
我有一个带有“ID”参数的ASP.NET页面: 我想根据“ID”参数在会话中存储我的类的列表C# 如何在一个会话中存储多个列表?,c#,asp.net,C#,Asp.net,我有一个带有“ID”参数的ASP.NET页面: 我想根据“ID”参数在会话中存储我的类的列表 public List<MyClass> list { get { if (Session["SessionName"] == null) { Session["SessionName"] = new List<MyClass>(); } return Session["Ses
public List<MyClass> list
{
get
{
if (Session["SessionName"] == null)
{
Session["SessionName"] = new List<MyClass>();
}
return Session["SessionName"] as List<MyClass>;
}
set
{
Session["SessionName"] = value;
}
}
公共列表
{
得到
{
if(Session[“SessionName”]==null)
{
会话[“SessionName”]=新列表();
}
将会话[“SessionName”]返回为列表;
}
设置
{
会话[“SessionName”]=值;
}
}
我的意思是:
当“ID”=1时,一些值将存储在列表中,
当“ID”=2时,列表中将存储另一个值
.
.
我为什么这么做?
因为最终用户可以使用不同的“ID”值在多个浏览器选项卡中查看同一页面为什么不使用字典而不是列表
public Dictionary<int, List<MyClass>> list
{
get
{
if (Session["SessionName"] == null)
{
Session["SessionName"] = new Dictionary<int, List<MyClass>>();
}
return Session["SessionName"] as Dictionary<int, List<MyClass>>;
}
set
{
Session["SessionName"] = value;
}
}
公共字典列表
{
得到
{
if(Session[“SessionName”]==null)
{
会话[“SessionName”]=新字典();
}
将会话[“SessionName”]作为字典返回;
}
设置
{
会话[“SessionName”]=值;
}
}
通过这种方式,您可以如下方式获取它:
List<MyClass> l = list[1]
List l=List[1]
在会话中存储完整列表,然后您可以根据ID从会话列表中获取值。那么“ID”在两个选项卡中的值是否相同?谢谢“Rohit Vyas”,我希望每个选项卡都有不同的列表?谢谢“Patrick Hofman”,我希望每个选项卡都有不同的列表(可能“ID”在许多页面中都有“0”值)?@asp.netprogrammer:字典包含一个列表,因此您可以在其中包含多个值。