2010-11-10 103 views
12

我有一个表tblEvent和另一个表tblContact。在tblEvent中有一个字段ContactID,它通过外键链接到tblContact中的ContactID。我已经三重检查;外键在数据库中。EF不会从表中的外键生成外键关联

实体框架模型不会像其他外键一样为其生成导航属性和外键关联。

对于此外键,EF不会为其生成导航属性会有什么不同?

谢谢!

+0

ContactID是由唯一密钥还是主密钥构建的?我们可以看到SQL – 2010-11-10 01:30:34

+0

SQL没有tblEvent,只有一个FK to tblLanguage。你有什么问题吗? tblEvent或tblLanguage。我们需要查看tblContact和tblEvent的SQL。 – RPM1984 2010-11-10 09:22:46

回答

11

我发现这里的解决方案:

Why doesn't EF 4 generate association for FK relation to column with unique index?

它不承认它的原因是是因为表上有外键字段唯一的非聚集索引。

显然,唯一的非聚集索引允许无法映射的空值。

+3

那么解决方案是什么?我使用Id作为主键和GUID来引用另一个表。我不想使用GUID作为主键。我知道我可以使用另一个属性作为聚集索引,但它似乎是错误的。 – NSAddict 2014-05-03 11:30:13