数据表计算过滤问题 [英] data tabel compute problems ofter filtering
本文介绍了数据表计算过滤问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个包含一个int列的数据表
如name,surname,age(int)
现在我过滤使用linq并将所有过滤日期分配给datatable
现在我想要计算年龄总和
它会像聚合函数Sum()的无效用法和类型:String
ex:
dttemp = dtItemsQty.AsEnumerable()。其中(a = > Convert.ToString(a [ age])== lblage.Text).CopyToDataTable( );
string 总计= Convert.ToString(dttemp.Compute( SUM(age), String .Empty));
解决试用
试试这个:
如果(dttemp!= null ){
var sum = dttemp.AsEnumerable()。Sum(dr = > dr.Field< int>( age)) ;
Label1.Text = sum.ToString(); < / int >
}
或
对象总和;
if (dttemp!= null ){
sum = dttemp.Compute( Sum(age), );
Label1.Text = sum.ToString();
}
--Amit
i have datatable that contain one int column
like name, surname, age(int)
now i filtering the using linq and assing all filter date to datatable
now i want to make sum of age
it will ginving error like Invalid usage of aggregate function Sum() and Type: String
ex:
dttemp = dtItemsQty.AsEnumerable().Where(a => Convert.ToString(a["age"]) == lblage.Text ).CopyToDataTable();
string Total = Convert.ToString(dttemp.Compute("SUM(age)", String.Empty));
解决方案
Try this:
if(dttemp!=null){ var sum = dttemp.AsEnumerable().Sum(dr => dr.Field<int>("age")); Label1.Text = sum.ToString();</int> }
OR
object sum;
if(dttemp!=null){ sum= dttemp.Compute("Sum(age)", ""); Label1.Text = sum.ToString();
}
--Amit
这篇关于数据表计算过滤问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文