【问题标题】:get specific value from ArrayList in C#从 C# 中的 ArrayList 获取特定值
【发布时间】:2015-06-06 06:23:36
【问题描述】:

我在 Asp.net 中使用 ArrayList 我想提取特定项目。我的代码是

ArrayList items = (ArrayList)Session["mycart"];
foreach(var v in items)
{



}

但这不起作用。我想获得像

这样的价值
v.myvalue;

我的 arralist 中有几项来自上一页的项目。

【问题讨论】:

标签: c# asp.net arraylist


【解决方案1】:

问题是 ArrayList 将所有元素存储为object。您需要对包含myvalue 的对象类型执行强制转换。 例如

ArrayList items = (ArrayList)Session["mycart"];
foreach(var v in items)
{
     MyObject o = v as MyObject;
     if (o != null)
     {
         // do stuff with o.myvalue
     }
}

最好只使用通用的List 类而不是ArrayList,尽管您可能有完全的理由不这样做。一般来说,你应该使用泛型(例如List<MyObject>),不仅是为了性能,也是为了易用性。

【讨论】:

  • 正是我将 ArrayList 更改为通用 List,现在它可以工作了
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-26
  • 1970-01-01
  • 1970-01-01
  • 2011-04-24
  • 2012-10-15
相关资源
最近更新 更多