C# 如何使用实体框架删除并重新创建数据库?
我有以下代码:C# 如何使用实体框架删除并重新创建数据库?,c#,entity-framework,C#,Entity Framework,我有以下代码: public class DataInitializer : DropCreateDatabaseAlways<DataContext> // public class DataInitializer : CreateDatabaseIfNotExists<DataContext> // public class DataInitializer : MigrateDatabaseToLatestVersion<DataContext, > {
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
{
公共类DataInitializer:DropCreateDatabaseAlways
//公共类DataInitializer:CreateDatabaseIfNotExists
//公共类数据初始值设定项:MigrateDatabaseToLatestVersion
{
公共数据初始值设定项()
{
//System.Diagnostics.Debug.Write(“设置初始值设定项\n”);
Database.SetInitializer(null);
尝试
{
这似乎并没有删除我的数据库并重新创建。有人能给我一些建议吗
请告诉我为什么不这样做。通过将初始值设定项设置为
null
来删除初始值设定项。创建以下初始值设定项(假设DataContext
是您的上下文类,继承自DbContext
):
还可以考虑使用
DropCreateDatabaseIfModelChanges
初始值设定项。通过将初始值设定为null
来删除初始值设定项。创建以下初始值设定项(假设DataContext
是您的上下文类,继承自DbContext
):
还可以考虑使用DropCreateDatabaseIfModelChanges
初始值设定项
public class DataInitializer : DropCreateDatabaseAlways<DataContext>
{
// optionally override Seed method
}
Database.SetInitializer(new DataInitializer());