我有一個實體作爲學生如何建模一對多的關係指向由不同的實體相同的實體在EF
public class Student{
..
public ICollection<Picture> Pictures {get;set;}
}
與學校實體
public class School{
..
public ICollection<Picture> Pictures {get;set;}
}
當我創建此模型並運行遷移我可以看到,在數據庫的Pictures表中,2個外鍵屬性已經創建爲StudentId和SchoolId。
在Pictures表中有這些外鍵是不正確的。
未來,如果另一個實體需要有圖片列表,那麼這意味着圖片表中的另一個外鍵屬性。
如何在代碼優先模型中更改此行爲?或者這是正確的方法?
謝謝是的,我想這是實現這一點的最佳方式。但仍然不高興結束在數據庫中的兩個表來保存圖片.. – akd
和在上下文類中我應該添加2個dbset一個爲SchoolPicture和一個爲StudentPicture是正確的? – akd
是的,你需要添加兩個DbSets,但你只需要,如果你想直接訪問圖片添加這些;在我的示例中,我只添加了學校和學生的DbSets。有兩個獨立的實體的好處是,你不能意外地給學生分配一張SchoolPicture。 – Markus