public class FindItems
    {
        public SimpleItemType[] item;
        public int totalItems;
    }
    public class SimpleItemType
    {
        public int ProductId;
        public string ProductName;
        public int CategoryId;
    }
我有这样两个类的定义,FindItems类中包含了一个SimpleItemType的数组我要在程序中读取数据库返回一个FindItems类型,其中item就包含了数据库的记录,totalItems返回记录数
如何让FindItems中的数组item按记录数动态增加,代码该怎么写?

解决方案 »

  1.   

    C#中好像不存在动态数组,可以使用list结构
      

  2.   

    用继承了Ilist接口的ArrayList看看
      

  3.   

    数组是定长的.无法添加.更改和插入的.用泛型集合
    IList<SimpleItemType>
      

  4.   

    谢谢楼上,不过用IList取完记录后,怎样再转成数组?IList<SimpleItemType> li = new List<SimpleItemType>();
    li.Add();
    ...
    li.Add();  //读入数据
    SimpleItemType[] si = new SimpleItemType[li.Count];怎么样将li里的记录转成si数组,只可以
    si[0] = li[0];
    si[1] = li[1];
    ....
    这样一个个赋值吗?可以si = (SimpleItemType)li吗?
      

  5.   

    IList <SimpleItemType>这个直接用就好啦
     li[0]; li[1];  为什么还要变成数组SimpleItemType[] ?
      

  6.   


    类要用于返回webservice操作,webservice里支持IList吗?
      

  7.   

    楼上都是正解,我一般直接用ArrayList,简单,代码也好读
      

  8.   

    SimpleItemType[] list = li.ToArray();