the*_*van 62 c# asp.net datatable user-controls
我有一个DataTable有5列:
DataTable包含5行.
如何将标签控件中的金额列的总和显示为"总金额"?
Jay*_*ggs 129
要计算DataTable中列的总和,请使用DataTable.Compute方法.
链接的MSDN文章的使用示例:
DataTable table = dataSet.Tables["YourTableName"];
// Declare an object variable.
object sumObject;
sumObject = table.Compute("Sum(Amount)", string.Empty);
Run Code Online (Sandbox Code Playgroud)
在总金额标签中显示结果,如下所示:
lblTotalAmount.Text = sumObject.ToString();
Run Code Online (Sandbox Code Playgroud)
Tho*_*mas 31
this.LabelControl.Text = datatable.AsEnumerable()
.Sum(x => x.Field<int>("Amount"))
.ToString();
Run Code Online (Sandbox Code Playgroud)
如果要筛选结果:
this.LabelControl.Text = datatable.AsEnumerable()
.Where(y => y.Field<string>("SomeCol") != "foo")
.Sum(x => x.Field<int>("MyColumn") )
.ToString();
Run Code Online (Sandbox Code Playgroud)
Muh*_*tar 15
你可以这样做..
DataRow[] dr = dtbl.Select("SUM(Amount)");
txtTotalAmount.Text = Convert.ToString(dr[0]);
Run Code Online (Sandbox Code Playgroud)
如果您有ADO.Net DataTable,那么您可以这样做
int sum = 0;
foreach(DataRow dr in dataTable.Rows)
{
sum += Convert.ToInt32(dr["Amount"]);
}
Run Code Online (Sandbox Code Playgroud)
如果要查询数据库表,可以使用
Select Sum(Amount) From DataTable
Run Code Online (Sandbox Code Playgroud)
小智 5
public decimal Total()
{
decimal decTotal=(datagridview1.DataSource as DataTable).Compute("Sum(FieldName)","");
return decTotal;
}
Run Code Online (Sandbox Code Playgroud)
计算数据表中列的总和,有效率为100%
lbl_TotaAmt.Text = MyDataTable.Compute("Sum(BalAmt)", "").ToString();
Run Code Online (Sandbox Code Playgroud)
如果您有任何条件,请像这样使用
lbl_TotaAmt.Text = MyDataTable.Compute("Sum(BalAmt)", "srno=1 or srno in(1,2)").ToString();
Run Code Online (Sandbox Code Playgroud)