![](/img/trans.png)
[英]how to calculate sum of times in a column using foreach loop ASP.NET MVC
[英]How to calculate the sum of the datatable column in asp.net?
我有一個有 5 列的 DataTable:
DataTable 包含 5 行。
如何將 Label 控件中的金額列的總和顯示為“總金額”?
要計算 DataTable 中列的總和,請使用DataTable.Compute方法。
鏈接的 MSDN 文章中的使用示例:
DataTable table = dataSet.Tables["YourTableName"];
// Declare an object variable.
object sumObject;
sumObject = table.Compute("Sum(Amount)", string.Empty);
在總金額 Label 中顯示結果,如下所示:
lblTotalAmount.Text = sumObject.ToString();
this.LabelControl.Text = datatable.AsEnumerable()
.Sum(x => x.Field<int>("Amount"))
.ToString();
如果要過濾結果:
this.LabelControl.Text = datatable.AsEnumerable()
.Where(y => y.Field<string>("SomeCol") != "foo")
.Sum(x => x.Field<int>("MyColumn") )
.ToString();
你可以這樣做..
DataRow[] dr = dtbl.Select("SUM(Amount)");
txtTotalAmount.Text = Convert.ToString(dr[0]);
如果你有一個 ADO.Net DataTable 你可以做
int sum = 0;
foreach(DataRow dr in dataTable.Rows)
{
sum += Convert.ToInt32(dr["Amount"]);
}
如果要查詢數據庫表,可以使用
Select Sum(Amount) From DataTable
public decimal Total()
{
decimal decTotal=(datagridview1.DataSource as DataTable).Compute("Sum(FieldName)","");
return decTotal;
}
計算數據表中列的總和,100% 有效
lbl_TotaAmt.Text = MyDataTable.Compute("Sum(BalAmt)", "").ToString();
如果你想有任何條件,像這樣使用它
lbl_TotaAmt.Text = MyDataTable.Compute("Sum(BalAmt)", "srno=1 or srno in(1,2)").ToString();
您可以按名稱分組使用 Linq
var allEntries = from r in dt.AsEnumerable()
select r["Amount"];
使用名稱空間using System.Linq;
您可以在Myblog上使用 c# 在數據表中找到樣本總計、小計、總計
嘗試這個
int sum = 0;
foreach (DataRow dr in dt.Rows)
{
dynamic value = dr[index].ToString();
if (!string.IsNullOrEmpty(value))
{
sum += Convert.ToInt32(value);
}
}
我認為這解決了
using System.Linq;
(datagridview1.DataSource as DataTable).AsEnumerable().Sum(c => c.Field<double>("valor"))
如果您想在您的 cshtml 文件中執行此操作,您可以這樣編寫(包括 LAMBDA 表達式):
<td><b>£@Model.Sum(i => i.Amount)</b></td>
您可以刪除 html 標簽,我只是將它們留在里面以嘗試幫助示例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.