2010-11-10 148 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