我有如下字典

Dictionary<Tuple<int, int>, bool> sampleDict= new Dictionary<Tuple<int, int>, bool>();


我在会话中添加的

if (!IsPostBack)
{
   HttpContext.Current.Session.Add("SessionsampleDict", sampleDict);
}


现在我需要将值添加到Dictionary中,所以我的代码就这样。

sampleDict.Add(DictKey, true);


现在的问题是,当我使用回发返回页面时,我丢失了sampleDict中的所有数据。

我在这里做错了什么?如何在会话中添加字典的值?

最佳答案

sampleDict将不在会话中,仅将其值复制到会话中。修改它们后,需要将值重新分配给会话变量。否则您可以尝试这样:

((Dictionary<Tuple<int, int>, bool>)HttpContext.Current.Session["SessionsampleDict"]).Add(DictKey, true);

关于c# - 在 session 中存储和访问字典值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41890651/

10-09 09:49