我有一個數據庫,其中的表沒有主鍵/外鍵。這個數據庫是第三方的,所以我不想編輯底層的數據庫結構。相反,我創建了一個EF模型,其中包含我想要使用的表格......現在我想在模型級別定義不同實體之間的關聯。例如,我有一個Person對象和一個Demographic對象,他們共享一個people_code_id列,它將是相同的......但我似乎無法弄清楚如何讓這個關聯出現,然後如何能夠訪問這些額外的列通過EntityDataSource?在實體框架中創建關聯?
2
A
回答
5
首先,您必須在實體模型中定義主鍵。每個實體都必須具有主鍵,否則您將無法定義關係以及所有實體變爲只讀。一旦定義了主鍵並且相關表包含外鍵屬性(只是相關實體的PK的ID),您可以手動創建關聯。 Here是如何做到這一點的一般方法。即使您沒有在數據庫中定義關係,它也應該可以工作。
-1
除非在數據庫模式中定義,否則EF不會顯示關聯。您仍然可以使用這些鍵進行連接,就像使用普通SQL進行連接以匹配鍵和它們的引用一樣。
我向數據庫模式添加了約束,您不需要更改表本身,它應該很容易,除非您已經有約束問題。
相關問題
- 1. 實體框架 - 無法創建關聯
- 2. 實體框架:從相關級聯表創建單個實體
- 3. 創建關係在實體框架
- 4. LINQ關聯 - 實體框架
- 5. 實體框架4 - 關聯
- 6. 實體框架列 - 實體關聯?
- 7. 實體框架 - 關聯實體問題
- 8. 創建複合關鍵實體框架
- 9. 實體框架4.3.1如何創建關聯
- 10. 實體框架爲關聯對象創建新/重複條目
- 11. 在實體框架中,如何在代碼中創建關聯屬性?
- 12. 創建關聯實體表
- 13. 實體框架 - 如何創建與同一個實體的關聯?
- 14. 在實體框架中創建方法
- 15. 實體框架5:創建
- 16. 實體框架創建重複實體
- 17. 實體框架4.0。實體創建
- 18. 聯盟在實體框架
- 19. 實體框架 - 關聯問題
- 20. 實體框架5缺失關聯
- 21. 手冊實體框架關聯
- 22. 實體框架的多表關聯
- 23. 實體框架歧視關聯
- 24. 實體框架 - 關聯問題
- 25. 有條件的關聯實體框架
- 26. 實體框架4:繼承和關聯
- 27. 實體框架 - 關聯集合
- 28. 如何在實體框架中創建1:1關係?
- 29. 在實體框架中定義集合而不創建關係
- 30. 在實體框架中,如何在關聯中指定條件?
謝謝,這解決了我的問題的第一部分......但我仍然不確定如何使用EntityDataSource從兩個實體中提取數據,即使我現在使用導航屬性設置它們? – davemackey 2011-03-30 18:34:08
對不起,我不會幫助你使用'EntityDataSource'。我不喜歡這些控制,我不使用它們。 – 2011-03-30 18:36:37