生成数据库策略:
CreateDatabaseIfNotExists:方法会在没有数据库时创建一个,这是默认行为。
DropCreateDatabaseIfModelChanges:如果我们在在模型改变时,自动重新创建一个新的数据库,就可以用这个方法。在这开发过程中非常有用。
DropCreateDatabaseAlways:如果你想在每次运行时都重新生成数据库就可以用这个方法。
数据库初始化 和上一篇创建项目差不多, 最主要的是在这里加上 Database.SetInitializer(new DropCreateDatabaseIfModelChanges<AmContext>());
假如说 要在初始化的时候添加一些数据
创建一个类,继承 DropCreateDatabaseIfModelChanges<AmContext>() --AmContext 数据库上下文类
重新方法 输入 override seed 就可以看见了
因为DropCreateDatabaseIfModelChanges<AmContext>() 的意思是数据模型发生改变,所以我们要改变数据模型
我重新在movie中添加一个qq的属性
由于我们 创建了一个类,来继承了DropCreateDatabaseIfModelChanges<AmContext>()
所以实例化这个类就行了
我们的数据库是这样的
运行 发现报错
我们把数据库展开的内容全部关闭
全部收缩,在运行一次
假如 还是报错的话 把焦点从数据库中一移开,或者刷新
显示出来了
数据库也更新了
在这里 要注意几点
外键也成功绑定
在这里 假如说 你创建的表面 不要 s
我在重新添加movie 一个属性 email ,让数据库模型发生改变
这就是 使数据库初始化,并且消除复数形式表名的方法,下一次我介绍mvc的主从表查询