实体框架迁移在 App.config 文件中找不到连接字符串



我的解决方案中有第二个项目,名为DataAccess(.NET Framework Class Library(,用于模型。我将我的主 asp .net mvc 项目设置为启动,并从包管理器控制台将 DataAccess 设置为默认值。我已经有一个现有的数据库。因此,我使用package-install命令在 DataAccess 层中安装了实体框架以获取最新版本。然后,我添加了一个实体数据模型。但是每当我尝试从 PM 运行enable-migrations时,它都会显示No connection string named 'MAHMHEntities' could be found in the application config file. 尽管 App.config 中有一个名为 MAHMHEntities 的连接字符串。在我的 MAHMHEntities.cs 类中,我声明了连接字符串:

namespace DataAccess.Entities
{
  using System.Data.Entity;
  public partial class MAHMHEntities : DbContext
  {
    public MAHMHEntities()
        : base("name=MAHMHEntities")
    {
    }  
    //other dbset classes
  }  
}  

在数据访问层中,我有两个连接字符串的 App.config 文件,我自己添加了DefaultConnection

<connectionStrings>
  <add name="DefaultConnection" connectionString="Data Source=.SQL2014;Initial Catalog=MAHMH;Integrated Security=SSPI" providerName="System.Data.SqlClient" />
  <add name="MAHMHEntities" connectionString="data source=.SQL2014;initial catalog=MAHMH;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient" />  
</connectionStrings>  

无论我使用哪种连接,当我尝试启用迁移时,我总是收到相同的错误。实体框架版本为 6.2.0。

您需要将数据访问项目设置为启动项目。或者,您可以将连接字符串添加到 Web 应用程序的(当前正在启动项目(web.config

最新更新