一列可数据到List <string> </string>

时间:2013-02-28 07:21:56

标签: c# linq

我有一个datatable,其中只包含一列,所有项目都是字符串。如何使用LINQ将其转换为List<string>

我试过:

DataRow[] rows = dtusers.Select();
var qq = from RowCollection in rows
         select new { UserCode = LibStatic.ToStr(RowCollection["UserCode"]) };

List<string> users = new List<string>();
users = qq.Cast<string>().ToList();

有一个总是有效的easyway:

foreach (DataRow dr in dtusers.Rows)
{
    users.Add(dr[0].ToString());
}

2 个答案:

答案 0 :(得分:59)

您可以使用LINQ query来执行此操作。

List<string> list = dtusers.AsEnumerable()
                           .Select(r=> r.Field<string>("UserCode"))
                           .ToList();

答案 1 :(得分:1)

您可以尝试使用此代码,

List<string> list = dt.Rows.OfType<DataRow>().Select(dr => (string)dr["ColumnName"]).ToList();