use*_*311 2 c# session list asp.net-mvc-4
我有一个会话对象,其中包含一个对象列表..
Session.Add("errorlist",errorlist);
Run Code Online (Sandbox Code Playgroud)
现在我想在另一个函数中循环遍历此错误列表.我试过,但它给出了以下错误:
foreach statement cannot operate on variables of type 'object' because 'object' does not contain a public definition for 'GetEnumerator'
Run Code Online (Sandbox Code Playgroud)
这是我试过的:
var error = Session["errorlist"];
foreach (var item in error)
{
//Something here
}
Run Code Online (Sandbox Code Playgroud)
我可以在"error"变量中看到对象列表.
System.Object默认情况下,进入会话的所有内容都是类型.所以你的var陈述将没有正确的类型.
退出会话时需要将其强制转换.
var error = (List<MyObject>)Session["errorlist"];
Run Code Online (Sandbox Code Playgroud)
更好的方法是使用安全转换并检查null:
var error = Session["errorlist"] as List<MyObject>;
if(error != null){
//Do stuff here
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3939 次 |
| 最近记录: |