C# DBFirst,配置EF实体模型
一、配置EF
1、创建类库,右键添加新建项
2、选择 EF设计器,下一步
3、配置数据库连接。没有就新建一个
4、选择映射内容,点击完成
5、配置流程完了。回到项目代码——
类库中自动生成dbCotext和数据目录结构如下:
类库会自动安装EntityFramework包:
类库的app.Config文件自动生成数据库连接字符串:
这时需要注意,如果项目整体采用多层架构(EF所在类库和项目启动项分属不同的层级),运行时可能抛出如下异常:
解决方法:
首先,为启动项安装EntityFramwork包(或者直接添加dll引用)
或
其次,打开类库里的App.Config,复制数据库连接字符串,粘贴到启动项目的web.config。解决!
二、更新EF
后续如果在数据库新增了表or更改了表结构,需要同步到EF,否则会导致EF操作失败。
同步方法:
1、在类库找到生成的edmx文件,双击打开。会显示现有的表
2、空白处右键,选择<从数据库更新模型>,出现以下窗口,自行操作
3、空白处右键,点击<验证>,验证以上更新,如果没有错误提示,则同步完成。
4、如果报错:
(1)提示字段没有得到映射:
选中报错的表,右键,点击<表映射>,查看字段映射关系,进行纠错
(2)若重新修改映射无法解决报错,可以删除该表,重新映射
——选中表,右键,选择<从模型中删除>,之后按上面步骤重新添加一遍