EntityFramework更新不会进行更改

在运行代码后,item.Name仍然会显示“New Item”。EntityFramework更新不会进行更改

这里有什么问题?

item.Name = "Updated Item"; 

items.Update(item);

public void Update(Item item)

{

using (var context = new wirvar_masterEntities())

{

var key = new EntityKey("wirvar_masterEntities.Items", "ID", item.ID);

var itemToUpdate = (Item)context.GetObjectByKey(key);

if (itemToUpdate == null) return;

itemToUpdate = item;

context.SaveChanges();

}

}

回答:

要做到这一点,尝试做你的GetObjectKey后的对象上下文ApplyCurrentValues方法。然后所有的值都应该更新。

回答:

你正在处理引用...而是映射的属性,比思考改变指针会做到这一点!

回答:

错误的是没有保存更改。您从数据库收到您的itemToUpdate,并且在您将数据替换为参考项目之后 - EF永远不知道您所做的任何更改,因为将item分配给itemToUpdate什么都不做。而不是分配尝试使用:

context.Items.ApplyCurrentValues(item); 

以上是 EntityFramework更新不会进行更改 的全部内容, 来源链接: utcz.com/qa/263008.html

回到顶部