为什么我的web.api项目仍然在寻找.mdf文件?

时间:2014-06-18 02:49:07

标签: ef-code-first ef-migrations localdb

我的代码第一个web.api项目在App_Data文件夹中自动创建的.mdf工作正常。我决定将我的应用程序移动到IIS并修改应用程序池配置以加载用户配置文件,再次,没问题。然后我在Visual Studio sql explorer中加载.mdf,此时,来自Web应用程序的应用程序池登录失败了。不知道为什么并且无法修复它,所以我决定使用sql express而不是浪费更多时间。因此,我安装了SQL Express,终止了所有迁移,并将web.config连接字符串修改为:

<connectionStrings>
    <add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=.;Initial Catalog=MyApp;Integrated Security=SSPI"/>
</connectionStrings>

当我尝试使用迁移到update-database或运行api应用程序时,我得到一个例外

  

无法附加文件   &#39; C:\用户\源\ MyApp的\主\解\ MyApp.API \程序App_Data \ MyApp.DataService.DataModel.AppEntities.mdf&#39;   as database&#39; MyApp.DataService.DataModel.AppEntities&#39;。

嗯,这是有意义的,因为我删除了它,但为什么我的应用程序仍在尝试连接到.mdf文件?它已经消失,我已经更改了默认连接。我已经在解决方案中搜索了引用.mdf文件的任何内容,但没有显示任何内容。我错过了什么?

1 个答案:

答案 0 :(得分:0)

我终于发现我必须将我的连接字符串命名为与我的DbContext类相同,所以在我的情况下:

<connectionStrings>
    <add name="AppEntities" providerName="System.Data.SqlClient" connectionString="Data Source=.;Initial Catalog=MyApp;Integrated Security=SSPI"/>
</connectionStrings>

匹配我的DbContext派生类

namespace MyApp.DataService.DataModel
{
    internal class AppEntities : DbContext