如何在相互引用的两个实体中映射外键
How to map foreign keys in two entities referencing each other
我这里有一个错误,无法完全理解其背后的逻辑。我正在使用 Entity Framework 6 和模型优先的方法。我设计了两个像这样相互引用的表:
基本上,一个帐户需要在一个公司,而一个公司必须有一个帐户作为管理员。但是,我从 EF 验证程序中收到错误消息:
Error 3014: Problem in mapping fragments starting at lines 224, 249:The foreign key 'Foreign key constraint 'CompaniesAccounts1' from table CompaniesSet (Id) to table AccountsSet (Id):' is not being enforced in the model. An Association or inheritance relationship needs to be created to enforce this constraint.
CompaniesAccounts1
是您在此处看到的第一个关联 (1...*),Accounts
是主体。第二个协会有 Companie
s 作为校长。有人知道我为什么会收到此错误吗?
所有 4 个属性都是不可为 null 的 Int32
类型。
根据 AgapwIesu 的评论,我想出了以下解决方案:
奇怪的是,我注意到了,因为我已经这样尝试过了,但仍然出现上面的错误。在挖掘实体模型的 xml 文件后,我发现了一些我不再使用的旧引用。所以他们搞砸了我现有的模型。删除那些和生成的 files/database 脚本并重建所有内容后,它起作用了。
我这里有一个错误,无法完全理解其背后的逻辑。我正在使用 Entity Framework 6 和模型优先的方法。我设计了两个像这样相互引用的表:
基本上,一个帐户需要在一个公司,而一个公司必须有一个帐户作为管理员。但是,我从 EF 验证程序中收到错误消息:
Error 3014: Problem in mapping fragments starting at lines 224, 249:The foreign key 'Foreign key constraint 'CompaniesAccounts1' from table CompaniesSet (Id) to table AccountsSet (Id):' is not being enforced in the model. An Association or inheritance relationship needs to be created to enforce this constraint.
CompaniesAccounts1
是您在此处看到的第一个关联 (1...*),Accounts
是主体。第二个协会有 Companie
s 作为校长。有人知道我为什么会收到此错误吗?
所有 4 个属性都是不可为 null 的 Int32
类型。
根据 AgapwIesu 的评论,我想出了以下解决方案:
奇怪的是,我注意到了,因为我已经这样尝试过了,但仍然出现上面的错误。在挖掘实体模型的 xml 文件后,我发现了一些我不再使用的旧引用。所以他们搞砸了我现有的模型。删除那些和生成的 files/database 脚本并重建所有内容后,它起作用了。