正确处理参照完整性约束违规

时间:2012-06-28 12:19:09

标签: c# entity-framework-4.1

.Net4实体框架,N层(所以对象被分离)

我有2个对象首先生成数据库,使得object1具有对象2的导航属性(1 - 1)。

我可以成功更改对象1的其他属性,但是当我尝试更改object2时,我收到错误。

我的网页上有一个object2名称和索引的下拉列表。

我已经尝试设置object1.object2Id属性并保存它,我得到一个引用Key错误。 (我可以看到这可能是因为对象仍然保留原始对象2)。

但是,如果我加载新的object2并尝试更新object1,则无法添加或附加该对象,因为其EntityReference具有不匹配的实体密钥属性。

所以我好像在围成一圈。

所以使用Detached对象和Entity Framework,更新子对象/外键的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

好的,想通了。这是我在detatched模式下工作的结果。如果我等到我在Business层即将编写更改,并在我将对象附加到上下文后更改fk就可以了。

我猜我需要学习的其中一件事!