我在Visual Studio中創建了一個ASP.NET MVC示例應用程序。我說像下面兩類:在Entity Framework中更新沒有遷移的數據庫
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public int Price { get; set; }
public ICollection<Product> Products { get; set; }
}
public class Order
{
public int Id{ get; set; }
public Product Product { get; set; }
public int ProductId { get; set; }
public DateTime RegisterDate { get; set; }
}
,然後我添加了兩個DbSet
到主DbContext
這樣的:
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public IDbSet<Product> Products { get; set; }
public IDbSet<Order> Orders { get; set; }
public ApplicationDbContext()
: base("DefaultConnection", throwIfV1Schema: false)
{
}
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}
但現在當我跑項目,我得到這個錯誤:
自創建數據庫以來,支持「ApplicationDbContext」上下文的模型已更改
我只想知道是否有方法更新數據庫而不使用遷移(Add-migrations
和update-database
)?
我認爲你正在尋找DropCreateDatabaseIfModelChanges – Rise
您可以使用[數據庫初始化](http://www.entityframeworktutorial.net/如Rise所示,代碼優先/數據庫初始化策略代碼優先.aspx)。這些對於早期發展很方便,並有自己的種子方法。一旦獲得了要保留的非種子數據,您可以切換到遷移。使用空初始化程序不會創建數據庫對象 - 它會假定代碼模型與數據庫匹配(危險)。 –