gpt4 book ai didi

sql-server - context.Database.Exists 始终返回 true,即使数据库文件丢失

转载 作者:行者123 更新时间:2023-12-03 00:13:56 26 4
gpt4 key购买 nike

如果我使用 Internet 应用程序项目模板(使用表单例份验证)创建一个新的 MVC4 Web 应用程序,那么当我第一次运行它并单击“注册”时,将调用 context.Database.Exists(在 InitializeSimpleMembershipAttribute 过滤器中) ) 正确检测到数据库文件不存在,并调用 ObjectContext.CreateDatabase,在 App_Data 文件夹中创建 dbf 和 ldf 文件。

如果我随后删除 dbf 和 ldf 文件并再次运行应用程序,则对 context.Database.Exists 的调用将返回 true,尽管数据库文件已消失。这种行为似乎是持久的:一旦调用了 ObjectContext.CreateDatabase,某些魔法似乎会记住数据库“存在”,即使物理文件消失并且即使我重新启动 PC。

好的,所以我假设 SQL Server 中的某些东西正在记住数据库的存在。我已经安装并运行了 SQL Server Management Studio。但\SQLEXPRESS 节点下的 Databases 文件夹下唯一显示的是 System Databases 文件夹。我没有看到数据库文件连接的迹象。

这到底是怎么回事?为什么 context.Database.Exist 返回 true,如果数据库文件消失,我如何说服它返回 false?为什么我在 SQL Server Management Studio 中看不到数据库连接的一些证据?

鲍勃

最佳答案

您可以通过从 LocalDb 实例中删除数据库来删除该数据库。使用 SQL Managment Studio 连接到“(LocalDb)\v11.0”。

关于sql-server - context.Database.Exists 始终返回 true,即使数据库文件丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13369964/

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