我认为我完全破坏了我的迁移,删除了我的迁移文件夹并删除了在数据库中生成的表迁移。为什么?因为我读了一些东西,我必须删除那些,所以我dit
现在无法使其发挥作用 我尝试在我的app_star和EfDbContext
中的构造函数中使用Database.SetInitializer(new DropCreateDatabaseIfModelChanges());
这在我的方法OnModelCreating中 modelBuilder.Conventions.Remove();
我使用PM>得到此错误Enable-Migrations-ProjectName EnableAutomaticMigrations Rhld-Force-Verbose
Enable-Migrations: There is no positional parameter that accepts the argument 'EnableAutomaticMigrations'.
At line: 1 Char: 1
+ Enable-Migrations-ProjectName EnableAutomaticMigrations Rhld-Force-Verbose
+ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
+ CategoryInfo: InvalidArgument: (:) [Enable-Migrations], ParameterBindingException
+ FullyQualifiedErrorId: PositionalParameterNotFound, Enable-Migrations
并使用PM> Update-Database -ProjectName rhld -Verbose -Force
Using StartUp project 'Rhld'.
Specify the indicator '-Verbose' to see the SQL statements that are being applied to the target database.
Not found any migration configuration in assembly 'Rhld'. (In Visual Studio, you can use the command Enable-Migrations of the Package Manager Console to add a migration configuration).
所以我的问题是我现在可以做什么?,我还想继续使用我的数据库 我试图在另一个数据库中创建表,但不能得到相同的错误
修改
我的问题是,在开始时工作正常,然后尝试更改名称和表格的外键,我不能这样开始阅读和删除事物:S
答案 0 :(得分:0)
我结束删除de database和
public EfDbContext()
{
Database.SetInitializer<EfDbContext>(new DropCreateDatabaseIfModelChanges<EfDbContext>());
}
在Application_Start中
Database.SetInitializer(new DropCreateDatabaseIfModelChanges<EfDbContext>());
不知道诀窍是什么
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<IncludeMetadataConvention>();
}
并使用此功能
Enable-Migrations -EnableAutomaticMigrations -ProjectName rhld -Force
Update-Database -ProjectName rhld -Verbose -Force