Mic*_*uen 77
试试这个:
static void Main(string[] args)
{
var dt = new DataTable
{
Columns = { { "Lastname",typeof(string) }, { "Firstname",typeof(string) } }
};
dt.Rows.Add("Lennon", "John");
dt.Rows.Add("McCartney", "Paul");
dt.Rows.Add("Harrison", "George");
dt.Rows.Add("Starr", "Ringo");
List<string> s = dt.AsEnumerable().Select(x => x[0].ToString()).ToList();
foreach(string e in s)
Console.WriteLine(e);
Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)
dev*_*tal 46
var list = dataTable.Rows.OfType<DataRow>()
.Select(dr => dr.Field<string>(columnName)).ToList();
Run Code Online (Sandbox Code Playgroud)
[ 编辑:System.Data.DataSetExtensions如果不能编译,请添加对项目的引用]
干得好.
DataTable defaultDataTable = defaultDataSet.Tables[0];
var list = (from x in defaultDataTable.AsEnumerable()
where x.Field<string>("column1") == something
select x.Field<string>("column2")).ToList();
Run Code Online (Sandbox Code Playgroud)
如果您需要第一列
var list = (from x in defaultDataTable.AsEnumerable()
where x.Field<string>(1) == something
select x.Field<string>(1)).ToList();
Run Code Online (Sandbox Code Playgroud)
这是你需要的吗?
DataTable myDataTable = new DataTable();
List<int> myList = new List<int>();
foreach (DataRow row in myDataTable.Rows)
{
myList.Add((int)row[0]);
}
Run Code Online (Sandbox Code Playgroud)
我就像下面一样,在您将列设置为 AsEnumarable 后,您可以排序、排序或按您想要的方式排序。
_dataTable.AsEnumerable().Select(p => p.Field<string>("ColumnName")).ToList();
Run Code Online (Sandbox Code Playgroud)