ObjectStateEntry的状态为“已添加”,而相应的实体是“未更改”?

时间:2012-11-29 11:48:32

标签: entity-framework entity-framework-4.3

我们使用EF5进行用户管理,并在UsersPartners之间建立简单的一对多关系,而这两个类都是自我跟踪的实体类。

User-partner relationship

在向数据库添加新用户时,我们创建一个新的用户实体,并检查数据库中是否已存在合作伙伴实体,并相应地设置合作伙伴。

var user = new User {
   Partner = userRepository.FirstOrDefault(e => e.PartnerCode == partnerCode) };

现在,当我们执行SaveChanges时,我们遇到ObjectStateManagerObjectStateEntry实例返回PartnerState属性设置为{{}的问题1}}:

ObjectStateEntry

目前还不清楚为什么将此状态设置为Added,因为如果我们只是按照Added对象的Entity属性导航到原始实体,我们就会看到它仍然具有状态ObjectStateEntry

enter image description here

这会导致合作伙伴实体被写入数据库的问题,即使它已经存在,也非常烦人。

这里可能有任何错误的建议吗?

0 个答案:

没有答案