Asp.net MVC5使用EF6做CodeFirst步骤
1、新建一个解决方案ZhengXie
2、新建3个类库:ZhengXie.Models;ZhengXie.DAL;ZhengXie.BLL
3、新建一个空MVC:ZhengXie.Web,设为启动项
4、在ZhengXie.Web和ZhengXie.DAL;ZhengXie.BLL下安装entityfromwork
PM>install-package entityfromwork -version 6.1.3
5、在models中建一个user实体类,DAL层引用
6、在DAL层建一个ZhengXieContext类继承DbContext
7、控制台选中DAL,执行Enable-Migrations,开启数据迁徙,这时会在DAL中生成一个Migration 的文件夹和一个配置文件。配置文件中将
<parameter value="mssqllocaldb" />
改为
<parameter value="Data Source=.; Integrated Security=True; MultipleActiveResultSets=True" />
此步骤的目的是将默认的本地DBLocal数据库改为正式SQL Server数据库,记得将Web.config中此项也改一下。
8、然后修改Web.config中的ConnectionString属性
<connectionStrings>
<add name="ZhengXieContext" connectionString="Data Source=.;User Id=sa;Password=sa; Database=ZhengXie" providerName="System.Data.SqlClient" />
</connectionStrings>
9、控制台选中DAL,执行Add-Migration Add_User_Entity,增加一次迁徙,执行完之后会发现,Migration 文件夹添加了一个配置文件 201709250342176_Add_User_Entity.cs 前面是时间,后面是我们数据迁移的名字。
10、添加初始化数据,在 Migration 文件夹 Configuration.cs 的Send中添加
var sysUsers = new List<SysUser>{
new SysUser {
UserName = "超级管理员",
LoginName = "admin",
Password = "admin",
State = 1
}
};
sysUsers.ForEach(s => context.SysUsers.AddOrUpdate(p => p.UserName, s));
context.SaveChanges();
11、添加完以后,执行最后一步 —— 更新数据库
在程序包管理控制台输入
Update-Database
或者
Update-Database -Verbose