2017-02-16 29 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)。請檢查您的遷移名稱,並最終重試。 –