外交關鍵公約
如果類 A 與類 B 有關係,而類 B 具有與 A 的主鍵具有相同名稱和型別的屬性,則 EF 自動假定該屬性是外來鍵。
public class Department
{
public int DepartmentId { set; get; }
public string Name { set; get; }
public virtual ICollection<Person> Staff { set; get; }
}
public class Person
{
public int Id { set; get; }
public string Name { set; get; }
public decimal Salary { set; get; }
public int DepartmentId { set; get; }
public virtual Department Department { set; get; }
}
在這種情況下,DepartmentId 是沒有明確說明的外來鍵。