即使在web.config中删除连接字符串后,EF ASP.net应用程序仍连接到db?

时间:2011-08-23 18:22:17

标签: asp.net-mvc-3 entity-framework-4

有人可以告诉我EF / asp.net如何缓存数据库条目?我有一个简单的mvc3项目命中sqlserverexpress数据库。我想更改webconfig中的设置以指向新的数据库,但即使我更改连接字符串甚至删除该部分,应用程序仍然连接到旧数据库。

1 个答案:

答案 0 :(得分:0)

EF是一件好事,但它会在不告诉你的情况下做一些事情。

您没有向我们提供太多信息,但如果您使用的是EF Code First,那么您的连接字符串名称必须与数据库上下文文件的名称相匹配。因此,如果您将MoviesContext作为数据库上下文,那么您应该为连接字符串使用相同的名称。

EF Code First使用了很多约定,因此如果找不到名为DB Context的连接字符串,它将尝试连接到SQLExpress(不关心是否安装了一个)并且会查找/使用很长的名称创建数据库:Namespace.MovieContext。

注意:EF Code First可能已经关闭并根据您的POCO类创建了一个数据库,如果这就是您所做的。

在这种情况下没有涉及缓存,只是EF Code First为您创建了一个数据库...