using System.Collections.Generic;
using System.Data.DataSetExtensions;
public static void Main()
DataTable dt = new DataTable();
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("SurName", typeof(string));
dt.Columns.Add("Age", typeof(int));
dt.Columns.Add("InsertDate", typeof(DateTime));
row1["SurName"] = "Adam";
row1["InsertDate"] = new DateTime(2020, 1, 1);
row2["SurName"] = "Smith";
row2["InsertDate"] = new DateTime(2020, 3, 12);
row3["SurName"] = "Strong";
row3["InsertDate"] = new DateTime(2020, 5, 20);
List<Person> lPerson = new List<Person>();
lPerson = dt.AsEnumerable().Select(s => new Person()
Name = s.Field<string>("Name"),
SurName = s.Field<string>("SurName"),
Age = s.Field<int>("Age"),
InsertDate = s.Field<DateTime>("InsertDate")
foreach(Person pers in lPerson)
Console.WriteLine("{0} {1} {2} {3}", pers.Name, pers.SurName, pers.Age, pers.InsertDate);
public string Name { get; set; }
public string SurName { get; set; }
public int Age { get; set; }
public DateTime InsertDate { get; set; }