我有以下代码:
public class DataInitializer : DropCreateDatabaseAlways<DataContext>
// public class DataInitializer : CreateDatabaseIfNotExists<DataContext>
// public class DataInitializer : MigrateDatabaseToLatestVersion<DataContext, >
{
public DataInitializer()
{
// System.Diagnostics.Debug.Write("Set Initializer\n");
Database.SetInitializer<DataContext>(null);
try
{
这似乎没有丢弃我的数据库并重新创建。有人能给 我建议为什么不这样做。
答案 0 :(得分:1)
您要通过将初始值设置为null
来删除初始值设定项。制作以下初始值设定项(假设DataContext
是您的上下文类,继承自DbContext
):
public class DataInitializer : DropCreateDatabaseAlways<DataContext>
{
// optionally override Seed method
}
在应用程序开始时(在首次创建上下文之前)调用
Database.SetInitializer(new DataInitializer());
还要考虑使用DropCreateDatabaseIfModelChanges
初始值设定项。