EF模型多重关系错误

时间:2014-10-14 13:42:51

标签: asp.net-mvc entity-framework

我有一个包含两个表的模型:VersionGeneralInformation

这是我的Version表:

Version
-----------
VersionID - PK
OwnerID
VersionParentID
isLocked

我的GeneralInformation表:

GeneralInformation
-----------
GeneralInformationID - PK
VersionID
FirstName
LastName
StoreName
MemberNumber

这是我目前的关系:

Foreign Key Base Table:  GeneralInformation (dbo)
Foreign Key Columns:     VersionID
Primary Key Table:       Version
Primary Key Columns:     VersionID

我的目标是为特定VersionID设置1个GeneralInformation行。但EF似乎试图为VersionID创建许多GeneralInformation。

当我更新实体框架中的模型时,它会为* (Collection of GeneralInformation)创建End2 Multiplicity。但是,它应该是1比1的关系。不是1比多。当我将其更改为0..1 (Zero or One of GeneralInformation)时,它会给我一个错误:

  

错误1运行转换:多重性在关系'FK_GeneralInformation_Version'中的角色'GeneralInformation'中无效。由于Dependent Role属性不是关键属性,因此Dependent Role的多重性的上限必须为*。

我做错了什么?非常感谢您的帮助!

1 个答案:

答案 0 :(得分:-2)

是外键" VersionID"在“常规信息”表中定义为唯一值?

例如

GeneralInformation
-----------
GeneralInformationID - PK
VersionID - UNIQUE
FirstName
LastName
StoreName
MemberNumber

这似乎与EF Model Multiplicity

有关