2012-03-14 84 views
0

我有一个关于Session [“arr3”]和ArrayList:“arr3”的特定问题。
在会话中存储ArrayList值

我已经在Session [“arr3”]中存储了某些值,并且在按钮的点击事件(例如, 'btnSpclins_Click',I要分配的会话[ “ARR3”]以下值: -

会话[ “ARR3”] =会话[ “ARR3”] + ARR3;
但我recieving以下编译错误: -
操作“+”不能应用于类型的“对象”和操作数“System.Collections.ArrayList”

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


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


我要保留会话[ “ARR3”]的旧值,并与ARR3(ArrayList的)值增加旧值,并保存在Session [ “ARR3”。最后一个会话[“arr3”]值被插入到数据库的表中。

请在这方面尽早帮助我。

+0

你真的想达到什么目的?我不清楚什么*“将旧值与arr3(ArrayList)值相加*”应该表示 – BrokenGlass 2012-03-14 21:50:29

+0

您需要将arr3元素添加到存储在会话中的数组列表中? – ema 2012-03-14 21:50:50

+0

@BrokenGlass:我修改了这个问题,你可能会重新阅读它。 – 2012-03-14 22:40:02

回答

3

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

如果是这样,你需要投你的会话对象返回到它是什么追加新的元素之前:

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

这会从会议原来的ArrayList,追加在ARR3的元素,并把它回到了会议中。

+0

这不是情况,我修改了这个问题,请再次阅读我的问题。请尽早帮助我。 – 2012-03-16 11:27:18

+0

你没有说明Session [“arr3”]是什么类型 - 也是一个'ArrayList'?另外,为什么在插入数据库之前需要将它们放入会话中?你在数据库方面尝试过什么? – 2012-03-16 11:32:55

+0

(1)-Session [“arr3”]和ArrayList“arr3”都包含一些字符串值,将在另一个按钮单击“btnSpclins_Click”的单击事件中插入数据库表中。 (2) - 我有几个控件捕获数据并插入到数据库的表中,因此显示在GridView中,我想要做的是当用户插入多个条目时,那么这些所有条目必须保留在Session中,然后全部这些条目将通过电子邮件中继发送给有关人员。目前最后的条目仅通过电子邮件中继发送,所以我需要满足所有条目(插入)。 – 2012-03-17 06:21:46