应用程序配置文件中的连接字符串“MyConnection”不包含必需的providerName属性。“

时间:2013-02-25 14:35:14

标签: entity-framework ef-code-first connection-string

我使用Entity Framework Code First

我的连接字符串位于配置文件中:

<connectionStrings>
    <clear/>
    <add name="ApplicationServices" connectionString="Data Source=PC-X;Initial Catalog=MYdb;Integrated Security=True"/>
  </connectionStrings>

当我尝试访问数据(应该创建数据库的东西)时,会出现以下错误:

The connection string 'ApplicationServices' in the application's configuration file does not contain the required providerName attribute."

我缺少什么?

4 个答案:

答案 0 :(得分:163)

您在connectionString属性之后缺少以下代码(假设您使用的是SQL):

providerName="System.Data.SqlClient"

答案 1 :(得分:10)

将来的某个时间。完整的代码

<add name="YouContext" connectionString="Integrated Security=True;Persist Security Info=False;Initial Catalog=YourDatabaseName;Data Source=YourPCName;" providerName="System.Data.SqlClient"/>

答案 2 :(得分:0)

在web.config中向下浏览,直到到达providers标签。 例如,这是我的提供商声明:

<providers><provider invariantName="System.Data.SqlClient" ... /></providers>

您应该将此System.Data.SqlClient添加为连接字符串中的提供者名称 因此您的连接字符串应如下所示:

  <connectionStrings>
 <add name="ApplicationServices" providerName="System.Data.SqlClient" connectionString="Data Source=PC-X;Initial Catalog=MYdb;Integrated Security=True"/>
  </connectionStrings>

答案 3 :(得分:0)

就我而言,问题在于启动项目目标不正确。在PM控制台中,目标迁移程序集项目正确。

我有一个多项目解决方案,目标是某个Web服务项目。

因此,我将StartUp更改为主要的WebSite项目,并且迁移已顺利完成,没有错误。