Tom*_*len 2 c# asp.net arraylist
无法想出这个
我有一个类的ArrayList:
// Holds an image
public class productImage
{
public int imageID;
public string imageURL;
public DateTime dateAdded;
public string slideTitle;
public string slideDescrip;
}
public ArrayList productImages = new ArrayList();
productImage newImage = new productImage();
newImage.imageID = 123;
productImages.Add(newImage);
Run Code Online (Sandbox Code Playgroud)
现在我如何访问该属性?
int something = productImages[0].imageID
Run Code Online (Sandbox Code Playgroud)
不行!
错误1'对象'不包含'slideTitle'的定义,并且没有扩展方法'slideTitle'接受类型'object'的第一个参数可以找到(你是否缺少using指令或程序集引用?)
Jar*_*Par 11
a中的值ArrayList是键入的Object.您需要强制转换productImage才能访问该属性.
int something = ((productImage)productImages[0]).imageId;
Run Code Online (Sandbox Code Playgroud)
一个更好的解决方案是使用类似强类型的集合List<T>.您可以指定元素类型,productImage并完全避免转换.
public List<productImage> productImages = new List<productImage>();
productImage newImage = new productImage();
newImage.imageID = 123;
productImages.Add(newImage);
int something = productImages[0].imageID; // Works
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5340 次 |
| 最近记录: |