使用LINQ循环访问会话变量?

Ber*_*ker 4 linq session

所以我对LINQ还是比较新的,所以请耐心等待.我正在尝试检查会话变量,如果变量名称不包含名为"Selected"的键,则将其值设置为null.

这就是我所拥有的,尽管我可能并不接近:

Session.Keys.Cast<string>().Where(k => !k.Contains("Selected")).ToList().ForEach(k => k = null);
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助.

Rob*_*cus 9

您拥有的LINQ是将键设置为null.我相信这是你实际设置值所需要的:

Session.Keys.Cast<string>()
            .Where(k => !k.Contains("Selected"))
            .ToList()
            .ForEach(k => Session[k] = null);
                          ^
Run Code Online (Sandbox Code Playgroud)