在Session中存储ArrayList值

时间:2012-03-14 21:46:58

标签: c# asp.net arraylist session-variables

关于 Session [“arr3”] 和一个ArrayList:“ arr3 ”我有一个特别的问题。

我在Session [“arr3”]中存储了某些值,并在按钮的点击事件中存储了例如' btnSpclins_Click ',我想为Session [“arr3”]分配以下值: -

会话[“arr3”] =会话[“arr3”] + arr3;
但我收到了以下编译错误: - 运算符'+'不能应用于'object'和'System.Collections.ArrayList'类型的操作数

或者我可以简单地说: -
会话[“arr3”] + = arr3;
这导致以下编译错误: -
“运算符'+ ='不能应用于'object'和'System.Collections.ArrayList'类型的操作数。”


目标:这样做的目的是保持Session [“arr3”]的值(这就是我所指的Session的旧值[“arr3”] ]),然后将ArrayList arr3的值添加到Session [“arr3”],然后将这两个组合值(Session [“arr3”] + arr3)存储在Session [“arr3”]中。现在这将是新的Session [“arr3”]的价值。该值将保存/插入数据库表中。


我想保留Session [“arr3”]的旧值,并使用arr3(ArrayList)值添加旧值并保存在Session [“arr3”]中。最后一个Session [“arr3”]值被插入数据库表中。

请尽早帮助我。

1 个答案:

答案 0 :(得分:3)

如果我理解正确,你在会话中有一个现有的ArrayList。您还有一个名为arr3的新ArrayList,您希望将它们连接在一起,将结果存储回会话中。

如果是这样,您需要在添加新元素之前将会话对象强制转换为它:

Session["arr3"] = ((ArrayList)Session["arr3"]).AddRange(arr3);

这将从会话中获取原始ArrayList,将元素附加到arr3中,然后将其放回会话中。