gpt4 book ai didi

entity-framework - 无法删除数据库,因为它当前正在使用 - EF 代码优先

转载 作者:行者123 更新时间:2023-12-04 07:24:24 24 4
gpt4 key购买 nike

在我的配置中,我有这个:

public sealed class Configuration : DbMigrationsConfiguration<App.Repository.NogginatorDbContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = true;
}

protected override void Seed(AppDbContext context)
{
SqlConnection.ClearAllPools();
//context.Database.CreateIfNotExists();
System.Data.Entity.Database.SetInitializer(new DropCreateDatabaseAlways<AppDbContext>());

if (!WebMatrix.WebData.WebSecurity.Initialized)
{
WebSecurity.InitializeDatabaseConnection("TestConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);
}
}
}

这用于每次都应该删除并重新创建的测试数据库。虽然当我从包管理器控制台点击“更新数据库”时,即使在运行之前手动删除了数据库,我也会得到:

Cannot drop database "Nogginator.Test" because it is currently in use.



我的连接字符串:
<add name="TestConnection" 
providerName="System.Data.SqlClient"
connectionString="Data Source=.\;Initial Catalog=App.Test;Trusted_Connection=True;MultipleActiveResultSets=True;" />

为什么会发生这种情况?

最佳答案

如果您最近正在调试 Web 应用程序,请确保 IIS Express 未仍在运行,并且没有与 IIS Express 关联的 w3wp.exe 进程。此进程可能仍在保持数据库连接。

关于entity-framework - 无法删除数据库,因为它当前正在使用 - EF 代码优先,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17886017/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com