2017-02-16 48 views
0

我试图覆盖InitialModel迁移,因为我根据客户DbSet这样增加了一个新的DbSet:后我加入DbSet我运行电影C#EF添加迁移-Force不起作用

public class ApplicationDbContext : IdentityDbContext<ApplicationUser> 
    { 
     public DbSet<Customer> Customers { get; set; } 
     public DbSet<Movie> Movies { get; set; } 


     public ApplicationDbContext() 
      : base("DefaultConnection", throwIfV1Schema: false) 
     { 
     } 

     public static ApplicationDbContext Create() 
     { 
      return new ApplicationDbContext(); 
     } 
    } 
} 

add-migration InitialModel -Force 

要覆盖IntialModel迁移文件并创建电影表,这样它会在里面InitialModel迁移文件的方法达到什么样的客户表这样happend作为CREATETABLE显示:

public partial class IitialModel : DbMigration 
    { 
     public override void Up() 
     { 

      CreateTable(
       "dbo.Customers", 
       c => new 
        { 
         Id = c.Int(nullable: false, identity: true), 
         Name = c.String(), 
        }) 
       .PrimaryKey(t => t.Id); 

每次我试图加入DbSet 将创建一个名为InitialModel1一个新的迁移文件不是我想要的东西后运行

add-migration InitialModel -Force 

,我要覆盖InitialModel迁移外商投资企业内部CREATETABLE称为电影它?

回答

0

请尝试指定名称明确,并添加冗余标志: 附加迁移-Name InitialModel -Verbose -Force

那么请告诉我们详细的日志。

+0

使用StartUp项目'vidly'。 '使用NuGet项目'vidly'。 脚手架迁移'IitialModel'。 此迁移文件的设计器代码包含当前Code First模型的快照。此快照用于在您为下一次迁移脚手架时计算对模型所做的更改。如果您对要在此迁移中包含的模型进行其他更改,则可以通过再次运行“添加迁移IitialModel”来重新搭建它。目标数据库为:'aspnet-vidly-20170214064956'(DataSource:(LocalDb)\ v11.0,Provider:System.Data.SqlClient,Origin:Configuration)。 –

+0

...只是注意到你有一个错字。您的第一次迁移称为IitialModel(不含n),但您的命令是“add-migration InitialModel -Force”(带有n)。请检查您的迁移名称,并最终重试。 –