12、给CodeFirsrt的实体添加外键约束
给学生实体添加一个外键,使用父母表的Id作为外键
首先要搞清楚,给学生表添加外键是什么意思,就是一个学生只能有一个父母,但是父母可能有多个孩子,所以学生与父母之间的关系为一对多。给学生表添加外键就代表学生是一,父母是多。
步骤一:
在学生表里写一个外键字段,和一个导航属字段。导航属性字段的作用目前理解为作用指向它的父母表的主键。如图:
步骤二:
在父母表里写一个用于存它的多关系的集合,父母是一对多中的’多’关系,如图;
步骤三
在孩子的实体中添加外键约束
有下面几种方式添加外键
①
给外键字段添加约束:
如图:
需要先引入命名空间,然后在外键字段上写即可,但是要在约束里面写导航属性的名字
②
给导航属性添加约束,这样约束里就要写外键字段的名字了
③
在上下文对象的类里写
先导航定义(按f12)到DbContext,
转到定义后找到下图里的方法,
复制到上下文对象所在类里,并重写该虚方法
在里面此方法里写实现
如图所示,这种方式也有两种方式实现
④
最后运行即可
可以查看数据库,里面学生表就有外键字段了.
事实上,这样就完成了两个表的一对多关系配置了