C#来自数据表行的最小值

C#来自数据表行的最小值,c#,linq,datatable,C#,Linq,Datatable,我有一个数据表,有6列,我必须找到每行的最小值。如何做到这一点 Col1 Col2 Col3 Col4 Col5 Col6 Min 45 41 24 25 74 145 24 27 28 398 82 2 54 2 5 563 7 20 43 254 5 试试这个 List<int> result = new List<int>(); foreach (DataRow row in table.Row

我有一个数据表,有6列,我必须找到每行的最小值。如何做到这一点

Col1 Col2 Col3 Col4 Col5 Col6 Min
45   41   24   25   74   145  24
27   28   398  82   2    54   2
5   563    7   20   43   254  5
试试这个

List<int> result = new List<int>();
foreach (DataRow row in table.Rows)
{
    result.Add(row.ItemArray.Cast<int>().Min());
}
列表结果=新列表();
foreach(table.Rows中的DataRow行)
{
Add(row.ItemArray.Cast().Min());
}
试试这个

List<int> result = new List<int>();
foreach (DataRow row in table.Rows)
{
    result.Add(row.ItemArray.Cast<int>().Min());
}
列表结果=新列表();
foreach(table.Rows中的DataRow行)
{
Add(row.ItemArray.Cast().Min());
}

或短端:

dataTable.Select(row => (new int[] { row.Col1, row.Col2, row.Col3, row.Col4, row.Col5, row.Col6 }).Min()));

dataTable.Select(row=>row.ItemArray.Cast().Min());
或者,如果dataTable包含其他非整数列:

dataTable.Select(row => row.ItemArray.OfType<int>().Min());
dataTable.Select(row=>row.ItemArray.OfType().Min());

或短端:

dataTable.Select(row => (new int[] { row.Col1, row.Col2, row.Col3, row.Col4, row.Col5, row.Col6 }).Min()));

dataTable.Select(row=>row.ItemArray.Cast().Min());
或者,如果dataTable包含其他非整数列:

dataTable.Select(row => row.ItemArray.OfType<int>().Min());
dataTable.Select(row=>row.ItemArray.OfType().Min());
var result=dt.AsEnumerable()
.Select(row=>row.ItemArray.Cast().Min());
var result=dt.AsEnumerable()
.Select(row=>row.ItemArray.Cast().Min());

-1。一点也不努力。一点也不努力。
var result = dt.AsEnumerable()
               .Select(row => row.ItemArray.Cast<int>().Min());