我想在数据库表中具有相同项目id的所有行中的所有项目价格的总和。我的意思是,结果应该是一个数字,当我从下拉列表中选择一个特定的项目id时,它会自动放在文本框中。
我如何在linq中做到这一点?
public double oIlstGetVouchersDetailjh(int nvoucherID)
{
Training_sNairoukhEntities1 sNairoukhEntities1 = new Training_sNairoukhEntities1();
double sum = (from Entity in sNairoukhEntities1.INV_InventoryItems
where Entity.ItemID == nvoucherID
select Entity.ItemPrice).sum();
return sum;
}或
public double oIlstGetVouchersDetailjh(int nvoucherID)
{
Training_sNairoukhEntities1 sNairoukhEntities1 = new Training_sNairoukhEntities1();
double olstInvoicesSrech = from Entity in sNairoukhEntities1.INV_InventoryItems
group Entity by Entity.ItemID == nvoucherID into g
select g.sum(Entity => Entity.ItemPrice);
return olstInvoicesSrech;
}但是第二个查询告诉我这个消息不能隐式地将类型'System.Linq.IQueryable‘转换为'double
发布于 2015-04-20 01:39:59
在您的情况下,这将是可行的:
Training_sNairoukhEntities1 sNairoukhEntities1 = new Training_sNairoukhEntities1();
double sum = (from Entity in sNairoukhEntities1.INV_InventoryItems
where Entity.ItemID == nvoucherID
select Entity.ItemPrice).Sum(); // Change sum to Sum
return sum;这里有一个更简单的方法:
sNairoukhEntities1.INV_InventoryItems.Where(item => item.ItemID == nvoucherID).Sum(item => item.ItemPrice);https://stackoverflow.com/questions/29732278
复制相似问题