C#中如何定义泛型集合的属性或字段

我的分页类中有个属性是存放数据集的,我希望以后的数据集都是List<T>的形式,所以我定义了一个Public List<T> XXX的属性,但是报错,说找不到T这个类型或namespace。那我应该怎么定义这个泛型集合的属性呢,是用List<object>还是object好,我希望是约束这个属性必须是泛型集合的,如果我没有描述清楚,请留言,我继续完善

第1个回答  2009-06-29
泛型结构是同一种数据类型的数据集合,你的定义是:Public List<T> XXX

List<T>当中的T是数据类型,好比List<string> 的数据集合里面只能存放string类型的数据一样,你可以重新试试看;

分业的话,你存放的应该是分段查询出来的数据集合,你就写成List<实体类名字>例如:
List<User> user = new List<User>();

路过~希望可以帮助你~
第2个回答  2009-06-30
//单行数据的共同点归纳为接口
interface IData{}
//将单行数据对象指定为符合接口特征
class MyData : IData {
}

(当然如果列表对象的类型是同一种的话就不用接口了,直接用MyData类型即可)

//一维列表
List<IData> list = new List<IData>();
list.Add(new MyData());
//二维列表
List<List<IData>> listsets = new List<List<IData>>();
listsets.Add(list);

//遍历
foreach (List<IData> datalist in listsets) {
foreach (IData mydata in datalist) {
}
}
第3个回答  推荐于2016-06-27
首先,你的数据都定义好了
public class Datas;
假设你的分页类
public class SplitPage{
...
public List<Datas> DataCollections;
}
其实,你也可以新定义一个类,继承自 List<Datas>
public class NewDatas : List<Datas>
那么,分页类里面就可以这样写
public NewDatas DataCollections;
这个List ,支持Datas 的属性
或许你定义为一个泛型类
public class Datas<T> : IEnumerable<T> where T : Datas{
private List<T> _dataCollections = new List<T>();
...
}
不过这样意义不大本回答被提问者采纳
第4个回答  2009-06-29
不能用list<T>来定义吧。定义属性时需要指明属性的类型,但list是集合,不是类型。
相似回答