Sin5k4 Sin5k4 - 8 days ago 5
C# Question

One columned datatable to List<string>

I have a

datatable
which contains only one column and all items are strings. How can I convert this to a
List<string>
using LINQ for example?

I Tried:

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();


There is the easyway which always works:

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

Answer

You can use LINQ query to do that.

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