我在3個表之間有1對1的關係。當主鍵包含2個鍵與實體框架時創建1對1關係
父表有2個主鍵(複合鍵)。讓我們將它們命名爲StudentId1和StudentId2。
什麼是相關的表,我會把
[Key, ForeignKey("Student")]
public int StudentId { get; set; }
我不只有一個屬性!
我應該這樣做嗎?將StudentId1StudentId2寫爲相關表的關鍵屬性沒有任何意義。
RelatedTable:
[Key, ForeignKey("Student")]
public int StudentId1 { get; set; }
[Key, ForeignKey("Student")]
public int StudentId2 { get; set; }
傳統的樣本:
public class Student
{
public Student() { }
public int StudentId { get; set; }
public string StudentName { get; set; }
public virtual StudentAddress StudentAddress { get; set; }
}
public class StudentAddress
{
[Key, ForeignKey("Student")]
public int StudentId { get; set; }
public virtual Student Student { get; set; }
}
請告訴我分開學生和地址的,如果你不想要的點有一個一對多的關係?您可以將Address類的屬性放在Students類的屬性旁邊。 –
擁有Student和StudentAddress實體有什麼意義?同樣的問題。但仍然存在這種情況。分離邏輯數據? – Pascal