【问题标题】:Storing ArrayList value in Session在 Session 中存储 ArrayList 值
【发布时间】:2012-03-31 10:23:06
【问题描述】:

我有一个关于 Session["arr3"] 和 ArrayList: "arr3" 的特殊问题。

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

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

或者我可以将其简化为:-
Session["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"] 值被插入到数据库的表中。

请尽早在这方面帮助我。

【问题讨论】:

  • 真正想要达到什么目标?我不清楚 "add the old value with the arr3(ArrayList) value" 应该是什么意思
  • 您需要将arr3元素添加到存储在会话中的arraylist中吗?
  • @BrokenGlass:我已经修改了问题,您可以重新阅读。
  • 我认为您需要提供更多代码示例以获得更多帮助,可能在一个单独的问题中,作为原始问题的一部分(如何在会话中附加到 ArrayList)现在已经回答。

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


【解决方案1】:

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

如果是这样,您需要在添加新元素之前将会话对象转换回原来的样子:

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

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

【讨论】:

  • 这不是场景,我已经修改了问题,请再次阅读我的问题。请尽早在这方面帮助我。
  • 你还没有说明 Session["arr3"] 是什么类型 - 也是ArrayList?另外,为什么在插入数据库之前需要将它们放入会话中?您在数据库方面尝试过什么?
  • (1)-Session["arr3"] 和 ArrayList "arr3" 都持有一些字符串值,这些值将在另一个 Button-click 'btnSpclins_Click 的点击事件中插入到 DB 表中'。 (2)- 我很少有控件可以捕获数据并插入到数据库的表中,因此显示在 GridView 中,我想做的是当用户插入多个条目时,这些所有条目必须保存在 Session 中,然后全部保存这些条目将通过电子邮件中继发送给相关人员。目前最后一个条目只通过电子邮件中继发送,所以我需要满足所有条目(插入)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-10
  • 1970-01-01
  • 2019-10-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-27
相关资源
最近更新 更多