SQLException无法删除数据库[database_name]

时间:2017-06-08 08:20:52

标签: c# asp.net-mvc

有一段时间我运行我的c#mvc web-project

SQLException无法删除数据库[database_name]。 [database_name]正在使用中
在我尝试从DBContextex对象检索我的数据的行上。但是当我删除数据库并重新启动项目时,错误已经过时。它突然发生了。发生错误后,我再次重新启动项目,然后当我删除数据库并重新启动时仍然存在错误。 假设控制器Action有以下行

List<entityname> listent=new DbContext().entitynames.toList();

正在执行,然后我在以下行上调整错误。 我也有一个数据库初始化程序。

可能是什么问题?

1 个答案:

答案 0 :(得分:2)

如果您在构造函数中设置了一个drop-create初始化器,如下所示,那么EF将在每次初始化上下文时重新创建数据库。

public MyDbContext() : base("MyDbConnectionString")
{
    //TODO: Remove initializer
    Database.SetInitializer<MyDbContext>(new DropCreateDatabaseAlways<MyDbContext>());
    Database.SetInitializer<MyDbContext>(new DropCreateDatabaseIfModelChanges<MyDbContext>());
}

如果您确实希望实体框架执行此操作,请确保您的用户帐户在SQL Server中具有所需的访问权限。

如果您的数据库已创建且您只想应用更新,请删除初始化程序并改为使用EF迁移。