簡體   English   中英

手動實體框架關聯

[英]Manual Entity Framework association

我有以下表格:

Table Group (
   id INT PK,
   year INT PK,
   name VARCHAR
)

Table Person (
    id PK,
    GroupID INT,
    name VARCHAR
)

該數據庫沒有定義外鍵,因此我想創建一個從Person表GroupID到Group表id的手動關聯。

為此,我右鍵單擊“人”並添加關聯。 我創建了一個多對一關聯,並且一切正常。 問題是當我去添加映射時。 因為Group表具有兩個主鍵,所以實體框架是從Person表中映射到year鍵的。

創建關聯需要做什么?

您無法創建此類關聯,因為EF遵循與數據庫相同的規則。 來自主體實體的所有PK列必須作為FK列存在於從屬實體中。

唯一的方法可以是某些數據庫視圖選擇具有ID和Name的不同組,並將其映射為只讀實體,並在這兩者之間建立導航。 我沒有嘗試過,但我認為它應該可以工作。 這將有其自身的缺點,因為您將有兩個完全不相關的組實體,而與人相關的實體將不接受任何修改(不映射自定義SQL命令或存儲過程以進行插入,更新和刪除操作)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM