在实体框架中保存更改后,未在数据库的特定表中提交更改

时间:2017-09-21 20:17:28

标签: c# asp.net sql-server asp.net-mvc entity-framework

在此代码中,我更改IsMale的{​​{1}}字段和Table1的{​​{1}}字段。

已应用Name中的更改,但未应用Table2中的更改。 Table1返回Table2,但context.SaveChanges()未在数据库中更新 请帮帮我。

2

1 个答案:

答案 0 :(得分:0)

如果你看一下这里的条目:

https://msdn.microsoft.com/en-us/library/gg696418(v=vs.113).aspx

它说

  

"查找具有给定主键值的实体。如果上下文中存在具有给定主键值的实体,则会立即返回该实体而不向商店发出请求。否则,向商店请求具有给定主键值的实体,如果找到该实体,则将该实体附加到上下文并返回。"

这告诉我它可能正在返回一个未连接的实体。您可以尝试从Attach()调用该实体上的Context.Table2方法。

context.Table2.Attach(tbl2);

您是否有任何理由不在该实体集上使用FirstOrDefault()?这应该生成一个查询并将模型附加到实体集。