我一直在阅读和查看有关EF的大量资源,但是 - 有时 - 我看到一些例子,省略了特定实例的外键ID。其他时候,他们把它放进去。将它留在或取出它会有什么影响?
例如:
public class Student
{
public int TeacherID { get; set; }
[Required]
public Teacher Teacher { get; set; }
}
public class Teacher
{
public virtual List<Student> Students { get; set; }
}
VS
public class Student
{
[Required]
public Teacher Teacher { get; set; }
}
public class Teacher
{
public virtual List<Student> Students { get; set; }
}
答案 0 :(得分:0)
与EF一起使用时,表和实体始终需要主键。 关于外键 - 数据库中的依赖表仍然需要外键,但相应的实体不必具有外键列的属性。如果您的模型中不包含外键属性,您将最终拥有独立关联。 This post描述了独立协会和外键关联之间的区别。