[英]Entity framework core relationships - foreign key
由于我刚刚开始学习实体框架,我想知道如何正确创建两个表之间的关系。
我会自己尝试,但我什至无法设置数据库连接:(
这是我的问题,这里有两个类(表) Student
和Grade
:
public class Student
{
public int Id { get; set; }
public string Name { get; set; }
public int GradeId { get; set; }
public Grade Grade { get; set; }
}
public class Grade
{
public int GradeId { get; set; }
public string GradeName { get; set; }
}
在上面的例子中,我意识到添加类型Grade
作为属性会创建与表Grade
关系,现在很重要,但是GradeId
不知道持有外键值呢? 它位于上方Grade
类型,它的名字是GradeId
,如果我位于别的地方把它命名为像StudentGradeId
,将仍然是ForeignKeyId
? 或者它必须是严格的(像我的例子一样包含 type + Id): TypeNameId = GradeId
?
EF 将按照惯例将导航属性与外键属性相匹配。 因此,如果您的导航属性称为 Grade 而外键属性称为 GradeId,它们将自动匹配。
如果它们不遵循约定,您只需通过使用ForeignKeyAttribute装饰属性或使用OnModelCreating 中的 Fluent API 来显式配置它们。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.