使用 Entity FrameworkWork 保存更改/更新数据集中的现有对象,而不必单独设置每个属性

2024-01-16

我可以做类似下面的事情(这不起作用),而不必显式设置对象的每个属性吗? Product 是默认模型绑定程序从表单提交创建的对象,ProductInDb 是我希望覆盖/更新的上下文/数据库中的对象。两者的 ProductID 主键相同。

var ProductInDb = context.Products.FirstOrDefault(x => x.ProductID == product.ProductID);

ProductInDb = product;

context.SaveChanges();

您可以附加现有的product并将其状态设置为Modified.

如果您正在使用DbContext API

context.Products.Attach(product);
context.Entry(product).State = EntityState.Modified;

context.SaveChanges();

For ObjectContext

context.Products.Attach(product);
context.ObjectStateManager.ChangeObjectState(product, EntityState.Modified);

context.SaveChanges();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Entity FrameworkWork 保存更改/更新数据集中的现有对象,而不必单独设置每个属性 的相关文章

随机推荐