日期:2014-05-18  浏览次数:21175 次

ArrayList中添加结构体
声明一个Arraylist,然后添加其元素,元素类型为struct.
代码如下:
C# code

  struct Result                                   //保存检测结果的结构体
        {
            public string dataId;          //被检数据项id
            public string dataNameSug;     //数据名称修改建议
            public string dataTypeSug;     //字段类型建议
            public string dataLenSug;      //字段长度建议
            public string fieldNameSug;    //字段名称修改建议
            public string dataFormatSug;   //数据格式修改建议    
            public string score;           //该条数据项得分
        };

Result rs;
rs.dataId = uo.dataID;
rs.dataNameSug=""; 
rs.dataTypeSug = "你好";
rs.dataLenSug = "";
rs.fieldNameSug = "";
rs.dataFormatSug ="";
rs.score = "";
ArrayList list = new ArrayList();
list.Add(rs);
//MessageBox.Show((Result)list[0].dataTypeSug);


现在我想用一个MessgeBox弹出保存到ArrayList中的一个结构体的一个元素,该怎么写代码?list[0]转化不了为结构体类型啊。

------解决方案--------------------
看错了 

List<Result> li=new List<Result>();
Result s1 = new Result() ;
s1.dataId="ab";...........
li.add(ss);

------解决方案--------------------
用list来代替arraylist

四楼的写法,没有问题,你试一下。