我有这个:
IEnumerable<int> intYear = Enumerable.Empty<int>();
如何插入一些值?我没有看到任何intYear.Add()方法。
像2010年,2011年等等......
答案 0 :(得分:11)
您应该使用IList<int>
代替IEnumerable<int>
:
IList<int> intYear = new List<int>();
intYear.Add(2011);
// and so on
IList<T>
实现了IEnumerable<T>
,因此您可以将其传递给以IEnumerable<T>
为参数的任何方法。
答案 1 :(得分:6)
您需要使用ICollection<T>
,因为IEnumerable<T>
仅用于迭代集合。
ICollection<int> years = new List<T>();
years.Add(2010);
years.Add(2011);
答案 2 :(得分:3)
IEnumerable没有Add方法。你应该使用IList。
IList<int> intYear = new List<int>();
intYear.Add(2010);
答案 3 :(得分:0)
通过使用IEnumerable Class的Concat(IEnumerable)方法,您可以先将所有值填充到List中,然后将其分配给IEnumerable列表。