如果我使用Internet应用程序项目模板(使用表单身份验证)创建新的MVC4 Web应用程序,那么当我第一次运行它并单击Register时,调用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中看不到数据库连接的证据?
鲍勃
答案 0 :(得分:4)
您可以通过从LocalDb实例中删除数据库来删除数据库。使用SQL Managment Studio连接到“(LocalDb)\ v11.0”。