如何从会话列表中获取特定信息

时间:2011-11-10 19:56:56

标签: c# asp.net list session

(List<Fruit>)Session["listSession"]

会话列表在我的主页中创建。 我想访问另一页的信息

我想循环抛出

if ((List<Fruit>)Session["listSession"].name == "apple ")
{
item.(access a method in my fruit class)
}else {
// do something else
}
\

2 个答案:

答案 0 :(得分:4)

List<Fruit> fruits = Session["listSession"] as List<Fruit>;
if(fruits != null)
{
    foreach(Fruit fruit in fruits)
    {
        if(fruit.name=="apple")
            fruit.Method();
        else
            //do something else
    }
}

答案 1 :(得分:2)

这里有几点:你可以从会话as中获取一个列表中的实例并保留对它的引用,然后你可以检查它是什么(不是null)而是它在获取该引用并执行所需操作之前,包含某事(如果可以为空)的内容:

var fruitList = Session["listSession"] as List<Fruit>;
if (fruitList != null && fruitList.Count > 0) 
{
    var fruit = fruitList[0];
    if (fruit != null && fruit.name == "apple ")
    { 
        fruit.Consume();
    }
}

这应该有所帮助,不过我确信你需要在它上面建立它以促进你的目的。