我正在使用Entity Framework 6 Code First,我的所有导航属性看起来都是正确的。我想在linq中做的是使用来自另一个(实体)表的计算值更新一个(实体)表中的多个值。所需的结果是下面的SQL,
UPDATE SalesDealItemChange
SET Price = SD.Rate * @FactorRate
FROM SalesDealItemChange SC
INNER JOIN [SalesDealItems] SD
ON SC.SalesDealItemID = sd.ID
WHERE SD.SalesDealID = @SalesDeal
我尝试了以下linq,但我不确定如何将更新隔离到SalesDealItemChange
context.SalesDealItems
.Include(x => x.SalesDealItemChanges)
.Where(x => x.SalesDealID == @SalesDeal)
.ForEach(x =>
{
x.SalesDealItemChanges.Price = x.ListPrice * @FactorRate;
});
context.SaveChanges();
此致