如何从List <t>获取IEnumerable <t>?</t> </t>

时间:2010-08-23 12:12:21

标签: c# generics

我有一个List,我需要一个IEnumerable,但List.GetEnumerator()返回List.Enumerator ......

是否有一种简单的获取(转换为?)IEnumerator的方法? (目前我用循环解决了这个问题,但是我觉得投射枚举器会是一个更好的解决方案)......

5 个答案:

答案 0 :(得分:15)

List<T>已经是IEnumerable<T>

答案 1 :(得分:4)

我认为您会发现通用List实现了IEnumerable,因此您无需执行任何操作。

你想在什么情况下使用它?

答案 2 :(得分:3)

它会隐式转换,所以IEnumerable<MyType> foo = myList;

答案 3 :(得分:3)

List<T>实现IEnumerable<T>,因此您无需强制转换它:

public IEnumerable<T> GetIEnumerable()
{
    List<T> yourListOfT = GetList();
    return yourListOfT;
}

答案 4 :(得分:2)

List实现了IEnumerable,所以只需使用你的List。