C# 基于linq查询的结果更新属性
我试图使用linq对一些数据进行分组,然后根据查询中的值更新属性 e、 g 查询工作正常,但执行foreach循环TransactionDetail.ProgressBar时未更新C# 基于linq查询的结果更新属性,c#,linq,C#,Linq,我试图使用linq对一些数据进行分组,然后根据查询中的值更新属性 e、 g 查询工作正常,但执行foreach循环TransactionDetail.ProgressBar时未更新 你能看出我做错了什么吗?这里一个可能的问题是等式的以下部分 (230 / item.PurchasesRequired) item.PurchasesRequired是一个整数,因此如果它大于230,结果将是0,当您将0乘以item.TransactionMount时,无论TransactionMount值如何,它
你能看出我做错了什么吗?这里一个可能的问题是等式的以下部分
(230 / item.PurchasesRequired)
item.PurchasesRequired是一个整数,因此如果它大于230,结果将是0,当您将0乘以item.TransactionMount时,无论TransactionMount值如何,它仍然是0。即使所需的PurchasesRequired低于230,也会使其变得非常不精确,因为所需的PurchasesRequired为230和120会给出相同的结果
试着形成如下公式:
(int)((230*item.TransactionAmount) / item.PurchasesRequired)
什么是交易?这是LINQ到对象还是LINQ到SQL 当对象在列表中循环时,可能无法修改该对象的属性。尝试将.ToList添加到列表中,如下所示:
var list = (from c in Transactions()
group c by c.StoreID into g
select new TransactionDetail{
Description = g.FirstOrDefault().Descrip,
BusinessName = g.FirstOrDefault().BusinessName,
TransactionAmount = g.Where(cr => cr.EntryType == cnCommon.INSERT_ENTRY).Sum(cr=>cr.TransactionAmount).Value,
PurchasesRequired = g.FirstOrDefault().PurchasesNeeded
}).ToList();
然后循环查看结果。感谢公式提示:但是如果我在lstTransactions.DataSource=list.ToList上放置断点;foreach循环中的任何更改都未应用
var list = (from c in Transactions()
group c by c.StoreID into g
select new TransactionDetail{
Description = g.FirstOrDefault().Descrip,
BusinessName = g.FirstOrDefault().BusinessName,
TransactionAmount = g.Where(cr => cr.EntryType == cnCommon.INSERT_ENTRY).Sum(cr=>cr.TransactionAmount).Value,
PurchasesRequired = g.FirstOrDefault().PurchasesNeeded
}).ToList();