EFCodeFirst Migrations数据库迁移
时间:2021-07-01 10:21:17
帮助过:20人阅读
PortalContext()
{
Database.SetInitializer<PortalContext>(null);
}
- 添加Migrations文件夹,并生成类文件Configuration.cs。
- namespace Portal.Migrations
- {
- using System;
- using System.Data.Entity;
- using System.Data.Entity.Migrations;
- using System.Linq;
-
- internal sealed class Configuration : DbMigrationsConfiguration<Portal.PortalContext>
- {
- public Configuration()
- {
- AutomaticMigrationsEnabled = true;
- }
-
- protected override void Seed(Portal.PortalContext context)
- {
-
-
-
-
-
-
-
-
-
-
-
-
- }
- }
- }
- PM> Update-Database -Verbose
- 在数据库模型中添加City类,执行程序包管理器控制台语句,Migrations文件夹中新增类文件
- PM> Add-Migration AddCity
- 版本回溯,修改数据库中表City,删除其中字段ProvinceNo。在程序包管理器控制台中执行以下两条语句:
- PM> Update-Database -Verbose
- //版本回溯
- PM> Update-Database –TargetMigration:"201309201643300_AddCity.cs"
- Update-Database -Script -SourceMigration:"201309201643300_AddCity.cs" -TargetMigration:"201309201708043_ModifyCity.cs"
2.EF Code First Migrations语句的其他参数
为指定的DbContext启用数据库迁移
- PM> Enable-Migrations -ContextTypeName Portal.PortalContext
设置是否允许自动迁移
- Enable-Migrations
生成的Configuration.cs类文件的构造函数
- public Configuration()
- {
- AutomaticMigrationsEnabled = false;
- }
Enable-Migrations指定项目名称
- PM> Enable-Migrations -StartUpProjectName Portal
如果在“Package Manager Console”中选择了默认项目可以不设置“-StartUpProjectName”参数;如果多次执行此命令可以添加-Force参数。
查看所执行的Sql语句 -Verbose指令
- Update-Database -Verbose
EFCodeFirst Migrations数据库迁移
标签:add style params element mic mil config html_ ons