Las*_*eak 7 asp.net-mvc linq-to-entities entity-framework entity-framework-4.1 asp.net-mvc-3
我是否可以执行类似下面的操作(不起作用),而无需显式设置对象的每个属性.Product是由表单提交中的默认模型绑定器创建的对象,而ProductInDb是我希望覆盖/更新的上下文/数据库中的对象.ProductID主键在两者上都相同.
var ProductInDb = context.Products.FirstOrDefault(x => x.ProductID == product.ProductID);
ProductInDb = product;
context.SaveChanges();
Run Code Online (Sandbox Code Playgroud)
Era*_*nga 15
您可以附加现有的product并将其状态设置为Modified.
如果您使用的是DbContextAPI
context.Products.Attach(product);
context.Entry(product).State = EntityState.Modified;
context.SaveChanges();
Run Code Online (Sandbox Code Playgroud)
对于 ObjectContext
context.Products.Attach(product);
context.ObjectStateManager.ChangeObjectState(product, EntityState.Modified);
context.SaveChanges();
Run Code Online (Sandbox Code Playgroud)