C# - var to List <t>转换</t>

时间:2009-10-11 17:49:10

标签: list c#-3.0 var

如何将var类型转换/转换为List类型?

此代码段给出了错误:

List<Student> studentCollection = Student.Get();

var selected = from s in studentCollection
                           select s;

List<Student> selectedCollection = (List<Student>)selected;
foreach (Student s in selectedCollection)
{
    s.Show();
}

4 个答案:

答案 0 :(得分:20)

当您执行Linq to Objects查询时,它会返回IEnumerable<Student>类型,您可以使用ToList()方法从List<T>创建IEnumerable<T>

var selected = from s in studentCollection
                           select s;

List<Student> selectedCollection = selected.ToList();

答案 1 :(得分:8)

示例代码中的var实际上是IEnumerable<Student>如果您要做的就是枚举它,则无需将其转换为列表

var selected = from s in studentCollection select s;

foreach (Student s in selected)
{
    s.Show();
}

如果确实需要它作为列表,Linq的ToList()方法会将其转换为一个。

答案 2 :(得分:3)

您可以调用ToList LINQ扩展方法

List<Student> selectedCollection = selected.ToList<Student>();
foreach (Student s in selectedCollection)
{
    s.Show();
}

答案 3 :(得分:1)

尝试以下

List<Student> selectedCollection = selected.ToList();