我想创建一个类型为IEnumerable<string,int,int>
如何创建它&amp;用数据填充它?
欢迎任何建议!
答案 0 :(得分:4)
您可以使用Tuple<string,int,int>
作为IEnumerable<T>
的通用类型:
var myData = new List<Tuple<string,int,int>>();
myData.Add(new Tuple<string,int,int>("myString", 1, 2));
但是,如果此数据具有超出单一方法的含义,我建议创建一个包含您的字段的类,以用作IEnumerable<T>
的泛型类型。
答案 1 :(得分:1)
严格地说,你不能创建任何东西的IEnumerable集合 - 因为IEnumerable是一个接口,你不能创建接口的实例。您必须创建一个实现IEnumerable 1 的类的实例。
所以你想要像List<string, int, int>
这样的东西,但正如Oded暗示的那样,这是不可能的,因为List<T>
只能包含一个泛型参数(这也是IEnumerable的)。
因此,Oded建议您使用“包装”类将三个值包含在一个值中,该值可用作列表中的T
。
如果您最后的评论建议,您不知道如何创建和填充课程或列表,我认为您需要做更多的研究......
1 我猜Enumerable.Range在这里可能算作伪异常......