八:MVC初始化数据库

时间:2021-05-02 19:51:30

    

生成数据库策略:

CreateDatabaseIfNotExists:方法会在没有数据库时创建一个,这是默认行为。

DropCreateDatabaseIfModelChanges:如果我们在在模型改变时,自动重新创建一个新的数据库,就可以用这个方法。在这开发过程中非常有用。

DropCreateDatabaseAlways:如果你想在每次运行时都重新生成数据库就可以用这个方法。

 

八:MVC初始化数据库

 

数据库初始化 和上一篇创建项目差不多, 最主要的是在这里加上 Database.SetInitializer(new DropCreateDatabaseIfModelChanges<AmContext>());

 八:MVC初始化数据库

 

假如说 要在初始化的时候添加一些数据

创建一个类,继承 DropCreateDatabaseIfModelChanges<AmContext>()   --AmContext  数据库上下文类

 

八:MVC初始化数据库

 

重新方法  输入   override seed   就可以看见了

因为DropCreateDatabaseIfModelChanges<AmContext>()   的意思是数据模型发生改变,所以我们要改变数据模型

我重新在movie中添加一个qq的属性

 

八:MVC初始化数据库

 

 

 由于我们  创建了一个类,来继承了DropCreateDatabaseIfModelChanges<AmContext>()   

所以实例化这个类就行了

 八:MVC初始化数据库

 

 我们的数据库是这样的

八:MVC初始化数据库

 

运行 发现报错

八:MVC初始化数据库

 

我们把数据库展开的内容全部关闭

八:MVC初始化数据库

 

 全部收缩,在运行一次

 

假如 还是报错的话  把焦点从数据库中一移开,或者刷新

 

八:MVC初始化数据库

显示出来了

 

八:MVC初始化数据库

 

八:MVC初始化数据库

 

数据库也更新了

在这里 要注意几点

八:MVC初始化数据库

八:MVC初始化数据库

八:MVC初始化数据库 外键也成功绑定

 

在这里  假如说 你创建的表面 不要 s

 

八:MVC初始化数据库

我在重新添加movie  一个属性  email ,让数据库模型发生改变

 

八:MVC初始化数据库

 

 

 这就是 使数据库初始化,并且消除复数形式表名的方法,下一次我介绍mvc的主从表查询