我的代码第一个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文件的任何内容,但没有显示任何内容。我错过了什么?
答案 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