web-dev-qa-db-fra.com

La chaîne de connexion 'MyConnection' dans le fichier de configuration de l'application ne contient pas l'attribut providerName requis. "

J'utilise Entity Framework Code First,

Ma chaîne de connexion est dans un fichier de configuration:

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

Lorsque j'essaie d'accéder aux données (quelque chose qui devrait créer la base de données) tombe avec l'erreur suivante:

La chaîne de connexion 'ApplicationServices' dans le fichier de configuration de l'application ne contient pas l'attribut providerName requis. "

Qu'est-ce que je rate?

80
Hodaya Shalom

Il vous manque le morceau de code suivant après l'attribut connectionString (en supposant que vous utilisez SQL):

providerName="System.Data.SqlClient"

166
IronMan84

Un jour dans le futur. le code complet

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

Descendez dans votre configuration web jusqu'à atteindre la balise providers. Par exemple, voici ma déclaration de fournisseurs:

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

vous devriez ajouter ceci System.Data.SqlClient en tant que nom de fournisseur dans votre chaîne de connexion, votre chaîne de connexion devrait alors ressembler à ceci:

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

0
Ahmad Hamed