我有一个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());
}
答案 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();