如何在C#中将System.Collection.IEnumerable
转换为列表?
实际上,我正在执行一个存储过程,该存储过程以System.Collection.IEnumerable
的形式返回结果集,我想将该结果集转换为C# List<User>
。
请注意,我不想使用任何循环。有没有一种强制类型转换的方法!
你可以使用以下内容:
IEnumerable myEnumerable = GetUser();
List<User> myList = myEnumerable.Cast<User>().ToList();
正如Lasse V. Karlsen在评论中建议的那样,您可以使用OfType<User>();
而不是Cast<User>
如果您的IEnumerable默认是泛型的,我认为这不是因为您提出的命名空间:System.Collection.IEnumerable,您可以轻松地使用:
IEnumerable<User> myEnumerable = GetUser();
List<User> myList = myEnumerable.ToList();
List<string> collection = myEnumCollection.ToList();
ToList()
无法做什么? - Lei Yang