J'utilise la classe WS et cela m'a donné une erreur lorsque j'exécute l'application:
The type or namespace name 'Entity' does not exist in the namespace 'System.Data'
J'ai une référence à la System.Data;
et à System.Data.Entity;
Mais pas de changement. Je continue à avoir l'erreur. J'ai aussi dans le web.config la ligne:
<compilation debug ="true" targetFramework="4.0"/>
Merci à tous! J'ai trouvé la solution. non pas que je comprenne pourquoi mais j’ai essayé et cela a fonctionné! Il me suffisait d'ajouter une référence à: System.Data.Entity.Design
et ne devez écrire aucun using
dans le code. Merci!
Cliquez avec le bouton droit sur la solution dans l'Explorateur de solutions Visual Studio, sélectionnez Gérer les packages de nugets de la solution et installez EntityFramework.
Bonjour, cet article est très trompeur, si vous lisez ceci 2 ans plus tard.
Avec EF6 et .net 4.5.1 dans VS 2013, j’ai dû faire référence à ce qui suit pour que cela fonctionne
using System.Data.Entity.Core.EntityClient;
un peu différent d'avant,
c’est plus un renseignement pour les personnes qui viennent ici pour obtenir de l’aide sur de nouveaux problèmes que pour une réponse à la question initiale
J'ai eu l'entité framework 6.1.3, mis à niveau (bien, plus dégradé dans NuGet) à 6.1.2. Travaillé.
Vous devez installer Entity Framework en cliquant avec le bouton droit de la souris sur votre solution VS puis en sélectionnant Gérer la solution NuGet Package et en recherchant la structure Entity. Après l'installation, le problème sera résolu
Je viens d'avoir la même erreur avec Visual Studio 2013 et EF6. Je devais utiliser un Entity Framework emballé dans NewGet et faire le travail parfaitement
Je vais ajouter ma réponse pour couvrir tous les cas:
Ma solution désinstallait EntityFramework de NuGet Package Manager, puis on m'a demandé de redémarrer Visual Studio, car il ne pouvait pas "finaliser la désinstallation".
J'ai redémarré Visual Studio et réinstallé EntityFramework, puis mon problème a été résolu.
J'espère que cela aide quelqu'un!
Ma solution était simple! J'avais réellement cette erreur lorsque j'ai extrait un dépôt d'un serveur svn. J'ai pris les mesures suivantes pour supprimer l'erreur
J'ai dû faire référence à System.Data.DataSetExtensions, ce qui semble complètement illogique
Cela m'a aidé, j'ai désinstallé EF, redémarré VS et j'ai ajouté 'using':
using System.Data.Entity;
using System.Data.Entity.Core.Objects;
using System.Data.Entity.Infrastructure;
essayé de réinstaller - pas de chance. Je devais actualiser une table dans mon modèle avant de trouver Entity.
Assurez-vous que le package EntityFramework Nuget est installé pour votre projet.
De la réponse de TonyDing:
Cliquez avec le bouton droit sur la solution dans l'Explorateur de solutions Visual Studio, sélectionnez Gérer les packages de nugets de la solution et installez EntityFramework.
Une fois installé, j'avais toujours l'erreur, mais j'ai ensuite réinstallé le commentaire de @ papergodzilla:
Package de mise à jour -reinstall
et cela a résolu mon problème
Faites cela dans la console du gestionnaire de packages (Affichage> Autres fenêtres> Console du gestionnaire de packages).
Maintenant tout va bien!
Je devais actualiser mon DBModel. Ça l'a résolu
J'ai remarqué que dans le csproj l'entité cadre avait hintpath comme
<HintPath>..\..\..\..\..\..\Users\{myusername}
J'avais ceci dans le fichier nuget.config:
<config>
<add key="repositoryPath" value="../lib" />
</config>
a) J'ai supprimé les lignes ci-dessus, b) désinstallé le package d'entité cadre, c) ALORS FERMÉ LA solution et rouvert la solution, d) réinstallé le cadre.
Cela a résolu mon problème.
J'ai eu les mêmes erreurs.
J'ai ajouté System.Data.Entity.Repository de Nuget Packages et les erreurs disparaissent.
J'espère que cela vous aidera!
Si vous utilisez une approche de base de données en premier:
Avant de désinstaller/réinstaller Entity Framework, essayez tout d'abord d'ajouter simplement une autre procédure table/stockée à votre modèle (en supposant qu'il en existe actuellement non mappée). Cela a résolu le problème pour moi. Bien sûr, si vous n'avez pas besoin de mapper la ressource, supprimez-la ensuite du modèle. Mais il semble qu'une régénération de force de l'edmx ait fait l'affaire.
J'ai découvert que la cause première est que lorsque vous installez les packages de nuget via l'interface utilisateur, les scripts ne s'exécutent pas parfois. Je vous recommande donc d'ouvrir la vue de sortie pendant que vous faites cela. Si vous ne voyez pas la fenêtre du contrat de licence lors de l'installation de Nuget, il est préférable de changer votre IDE ne fait pas le travail correctement. C'est pourquoi un redémarrage, un nettoyage et une reconstruction aident!
PS: Il est utile d’ajouter quoi que ce soit sous System.Data.Entity. *, Car cela déclenche le programme d’installation de Nuget. Mais cela, j’ai trouvé un moyen peu fiable.
Il suffit donc de regarder la fenêtre de sortie pour voir quelque chose comme un message d’installation de nuget réussi à la fin. La plupart du temps, en cas de problème, le programme d'installation de Nuget ne sera même pas lancé. C'est à ce moment que votre redémarrage de IDE va vous aider.
Lorsque les choses se passent bien, le gestionnaire de paquets Nuget et IDE (j’ai utilisé le terme d’installateur) ci-dessus) feraient la modification, compileraient la solution et vous garderaient heureux! IDE et en regardant cette fenêtre de sortie!)