我有一個DataTable最小36000列,20000行最小。我有一個硬編碼的列名列表,我需要在數據表中找到並對每列的值執行一些計算。在C#中搜索DataTable#
特定列
我想用一個簡單的foreach找到列名和執行我的計算方法datatable.compute的所有行的e.g總和。
有沒有更好的方法來實現這一目標?任何幫助是極大的讚賞。
謝謝。
我使用的.Net 4.6和VS2015
我有一個DataTable最小36000列,20000行最小。我有一個硬編碼的列名列表,我需要在數據表中找到並對每列的值執行一些計算。在C#中搜索DataTable#
特定列
我想用一個簡單的foreach找到列名和執行我的計算方法datatable.compute的所有行的e.g總和。
有沒有更好的方法來實現這一目標?任何幫助是極大的讚賞。
謝謝。
我使用的.Net 4.6和VS2015
但不要忘記edite ui parametrs內部並行或並行foreach你需要使用調用 –
你試過嗎? –
您可以比較Datatable.Compute和Foreach之間的性能差異。
// Datatable.Compute sample
DataTable table;
table = dataSet.Tables["Orders"];
// Declare an object variable.
object sumObject;
sumObject = table.Compute("Sum(Total)", "EmpID = 5");
下面是
// Foreach through DataTable
double sum = 0;
dt = ds.Tables["Orders"];
foreach (DataRow dr in dt.Rows)
{
sum += System.Convert.ToDouble(dr["Total"]);
}
36000列的foreach一個樣本?哇 – InBetween
你對36000列和20000行做了什麼? –
是的,更好的方法是使用比大型數據表更適合的存儲介質。 – Equalsk