10
votes

Le nom de type ou d'espace de noms 'dbcontext' n'a pas pu être trouvé (EF installé)

J'utilise vs 2012. J'ai installé avec Nuget the entityframework (version 6.1.1) et ajoutez des références au système system.data et . Data.entity , mais quand j'ouvre une nouvelle classe dans la solution et que je parle de dBContext, il est indiqué:

"Le nom de type ou d'espace de noms" dbcontext "n'a pas pu être trouvé (êtes-vous manquant une directive ou une référence d'assemblage?) "

C'est bizarre Béacuse Le dbcontext est vert, comme chaque classe reconnue, lorsque j'appuie sur F12 pour examiner la classe dBContext, cela m'apporte au System.Data.Enty.dbcontext Classe Comme il se doit. xxx

le même endroit avec DBSet xxx

Que manque-t-il?


5 commentaires

Cela peut sembler stupide, mais essayez de nettoyer votre solution et de le reconstruire, ou même de redémarrer vs. On ne sait jamais.


Est-ce votre seule erreur de compilateur? S'il y a d'autres erreurs, essayez d'abord de traiter avec eux et voyez si vous obtenez toujours celui-ci.


En outre, vous dites que vous avez System.Data and System.Data.Data.Data.Data.Data.Data. On dirait que la dernière entitéFramework Nuget Package doit inclure EntityFramework.dll, mais pas system.data.entity.dll. Vous devrez peut-être nettoyer vos références et tirer à nouveau le package Nuget.


EF6 a ajouté des changements de rupture. Il est maintenant complètement hors de bande et contenue dans l'ensemble de l'Assemblée. Vous ne devriez plus utiliser System.Data.Enity.


YYORE NATHAN - Pas stupide du tout, j'ai essayé cela, mais cela ne fonctionne toujours pas. JOE ENOS - AUCUNE AUTRE ERREURS ERREURS, JUSTE CELES ET UN AUTRE CONNELLE "MYCLASS .DBContext 'est une" propriété "mais est utilisée comme un" type "". JOE ENOS \ DÉMISSILE - Lorsque j'ai supprimé les données et les données. Les classes ne sont pas reconnues du tout.


8 Réponses :


1
votes

Avez-vous essayé de référencer l'entitéFramework.dll à la place? Ou peut-être que vous pouvez essayer le nom pleinement qualifié "Public System.Data.entity.dbContext MyContex {Get; Set;}".


1 commentaires

Lors de la frappe "à l'aide de Cadre d'entité", il a dit qu'il n'existe pas. Mettre System.Data.Enty.DBContext me fait les mêmes erreurs.



3
votes

Etepte du projet a été compilé avec Cible Cadre 3.5, lorsque je l'ai changé à 4.5, cela a fonctionné. Merci à tous pour vous des commentaires.


1 commentaires

Vous êtes monsieur .. sont une star.



5
votes

Entity d'installation d'installationFrameworksion 5.0.0


1 commentaires

Cela fonctionne, j'ai utilisé l'entité d'installation d'installage-packageFramework -Version 6.1.3 pour travailler avec vs 2015



2
votes

en utilisant system.data.entity;

// Cela résoudra à la fois les DBContext et DBSet DBSet


0 commentaires

1
votes

Le problème survient principalement lorsque vous modifiez la version de votre solution .NET.I a résolu le problème par

Ajout de la DLL EntityFramework.dll Si vous utilisez EntityFramework Version 6


0 commentaires

1
votes

excuses s'il s'agit d'une réponse trop tardive: j'avais le même problème aujourd'hui avec VS2015. Quoi qu'il en soit, le nom pleinement qualifié fera le travail,

Classe publique Étudiants: System.Data.entity.dbcontext


0 commentaires

1
votes

Je reçois cette erreur après la mise à niveau de Visual Studio 2015 à 2017. J'ai fermé VS, supprimé mon fichier .suo, redémarrage de VS, reconstruit la solution et tout fonctionne bien maintenant.


1 commentaires

Travaille pour moi. Merci.



0
votes

J'ajoute un nouveau projet à une solution existante et a rencontré le même problème. J'ai utilisé des outils -> Gestionnaire de packages Nuget -> Gérer les packages Nuget pour la solution ... et j'ai pu voir les versions que tous les autres projets utilisent. De cette façon, j'ai pu choisir la même version pour mon projet qui a été utilisé tout au long du reste de la puissance.


0 commentaires