天天看點

DataTable的Compute方法和Expression文法

DataTable的Compute的功能可謂強大。

public object Compute(
 string expression,
 string filter
);      

expression:要執行計算的表達式

filter:過濾表達式

這兩個表達式都是用Sql文法,例如:

table.Compute("sum(count)", "count>0");      

當我們的table中有count和price列時,如果要計算總金額,應該如何寫表達式呢?

table.Compute("sum(count*price)", "");      

你肯定會想到這樣計算,但這樣是錯誤的。我們應該使用表達式,先添加每一行的金額列,然後再計算總金額:

table.Columns.Add("total", typeof(decimal), "count*price");
table.Compute("total", "");      

這個時侯才能得出總的金額。

文章來源:http://youring2.cnblogs.com/

c#