我有一個表tblEvent和另一個表tblContact。在tblEvent中有一個字段ContactID,它通過外鍵鏈接到tblContact中的ContactID。我已經三重檢查;外鍵在數據庫中。EF不會從表中的外鍵生成外鍵關聯
實體框架模型不會像其他外鍵一樣爲其生成導航屬性和外鍵關聯。
對於此外鍵,EF不會爲其生成導航屬性會有什麼不同?
謝謝!
我有一個表tblEvent和另一個表tblContact。在tblEvent中有一個字段ContactID,它通過外鍵鏈接到tblContact中的ContactID。我已經三重檢查;外鍵在數據庫中。EF不會從表中的外鍵生成外鍵關聯
實體框架模型不會像其他外鍵一樣爲其生成導航屬性和外鍵關聯。
對於此外鍵,EF不會爲其生成導航屬性會有什麼不同?
謝謝!
如果您使用的是3.5sp1,可能是問題所在。
本文涉及一些更改,如果沒有其他內容,您可以隨時在實體設計器中手動添加fk關聯,如文章中所述。
http://blogs.msdn.com/b/efdesign/archive/2009/03/16/foreign-keys-in-the-entity-framework.aspx
這是.NET 4.0。什麼是瘋狂的,它承認其他外鍵 - 只是不是這一個和另外兩個。它承認的其他外鍵。 – rsteckly 2010-11-10 05:57:43
我發現這裏的解決方案:
Why doesn't EF 4 generate association for FK relation to column with unique index?
它不承認它的原因是是因爲表上有外鍵字段唯一的非聚集索引。
顯然,唯一的非聚集索引允許無法映射的空值。
那麼解決方案是什麼?我使用Id作爲主鍵和GUID來引用另一個表。我不想使用GUID作爲主鍵。我知道我可以使用另一個屬性作爲聚集索引,但它似乎是錯誤的。 – NSAddict 2014-05-03 11:30:13
ContactID是由唯一密鑰還是主密鑰構建的?我們可以看到SQL – 2010-11-10 01:30:34
SQL沒有tblEvent,只有一個FK to tblLanguage。你有什麼問題嗎? tblEvent或tblLanguage。我們需要查看tblContact和tblEvent的SQL。 – RPM1984 2010-11-10 09:22:46