2011-01-11 32 views
0
DataTable table = DataProvider.GetTable() 

var clientIds = from r in table.AsEnumerable() 
       select r.Field<string>("CLIENT_ID"); 

我想要clientIds成为List<string>。目前,它是一个EnumerableRowCollection<>LINQ to DataSet从DataTable获取泛型列表

我缺少什么?

回答

3

这可能工作

DataTable table = DataProvider.GetTable() 

var clientIds = (from r in table.AsEnumerable() 
       select r.Field<string>("CLIENT_ID")).ToList(); 
+0

+1,谢谢。喜欢语法。 – JohnB 2011-01-11 17:20:10

1

下面是做到这一点的一种方法:

var clientIds = table.Rows.Cast<DataRow>().Select(r => r.Field<string>("CLIENT_ID").ToList(); 

或者,如果此语法是工作,但没有带回结果列表,你可以做是这样的:

var clientIds = (from r in table.AsEnumerable() 
       select r.Field<string>("CLIENT_ID")).ToList();