我希望将Quantity
实体的Stock
属性增加X
单位为10.但是使用EF的任何工作都会失败,因为相应的SQL语句(Quantity = Quantity + 10
)不是生成并生成(Quantity = 110
)。这在并发模型中很重要;
var db = new WarehouseContext();
Stock s = db.Stocks.Single(p=>p.Id==1);
Console.WriteLine(s.Quantity); // --> 100
s.Quantity += 10;
db.SaveChanges();
这将生成:
UPDATE dbo.Stock SET Quantity = 110;
但是,我想要这个:
UPDATE dbo.Stock SET Quantity = Quantity + 10;