在EF4中无法在不首先获取实体的情况下更新实体
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在EF4中无法在不首先获取实体的情况下更新实体相关的知识,希望对你有一定的参考价值。
当我使用此代码更新CustomerName
时,CustomerDesc
变为NULL,反之亦然。我实施了在EF4 Update Entity Without First Getting Entity中找到的解决方案
using (var dbMdl = new TestDBEntityModel())
{
Customer pr1 = new Customer();
pr1.CustomerId = 1;
if(pr1.EntityState == EntityState.Detached)
dbMdl.Customers.Attach(pr1);
// pr1.CustomerName = "Changed!";
pr1.CustomerDesc = "Changed!";
dbMdl.ObjectStateManager.ChangeObjectState(pr1, System.Data.EntityState.Modified);
dbMdl.SaveChanges();
}
答案
通过在线教程后,我通过删除dbMdl.ObjectStateManager.ChangeObjectState(pr1, System.Data.EntityState.Modified);
解决了它,它按预期工作。
以上是关于在EF4中无法在不首先获取实体的情况下更新实体的主要内容,如果未能解决你的问题,请参考以下文章