Chaîne de connexion EDMX

connection-string edmx entity-framework

Question

donc l'histoire est comme ça.

J'ai un projet, appelé PA.DLL, qui contient un modèle d'entité (edmx).

Dans un autre projet faisant référence à PA.DLL, j'ai copié la chaîne de connexion créée (automatiquement) lors de la création du fichier edmx dans l'application principale app.config.

Cependant, lorsque je charge et exécute les lignes suivantes:

using (PAEntities analytix = new PAEntities())
           {
...
}

je reçois l'erreur suivante:

System.ArgumentException: The specified default EntityContainer name 'PAEntities' could not be found in the mapping and metadata information.

Quelqu'un a-t-il une idée de la cause de cette erreur?

Voici comment ma chaîne de connexion est configurée:

<add name="PAEntities" 
    connectionString="metadata=res://*/PAEntities.csdl|res://*/PAEntities.ssdl|res://*/PAEntities.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=XSXSX;Initial Catalog=PA;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />

Merci

Réponse acceptée

Une solution consiste à placer la chaîne de connexion dans le fichier de configuration du projet utilisant votre DLL.
L'autre consiste à passer la chaîne de connexion en code (utilisez le constructeur paramétré de PAEntities).


Réponse populaire

Dans l'explorateur de solutions, cliquez avec le bouton droit sur le fichier Entity Data Model (.edmx) et cliquez sur 'Ouvrir avec'. Une boîte de dialogue s'ouvrira pour choisir un programme pour vous permettre d'ouvrir le fichier. Sélectionnez ou double-cliquez sur 'Editeur XML (texte)'.

Maintenant, vous regardez la version XML du fichier EDM où vous pouvez facilement modifier le nom 'EntityContainer'.

Si vous avez modifié la chaîne de connexion sur le fichier webconfig, assurez-vous que 'DefaultContainerName' est le nom de la section 'EntityContainer' dans ce fichier XML.

Généralement, lorsque vous mettez à jour le defaultContainerName dans le fichier * .Designer.cs, le fichier XML n'est pas mis à jour. Donc, vous devez le faire manuellement.



Related

Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow