Visual Studio 2013 IntelliSense cesse de fonctionner pour les contrôleurs ASP.NET MVC5


132

Je suis confronté à un problème étrange dans mon projet Visual Studio 2013 ASP.NET MVC 5. Tout à coup, l'IntelliSense dans les classes Controller du projet MVC 5 ne fonctionne pas du tout.

J'ai d'autres projets de bibliothèque de classes dans ma solution et IntelliSense fonctionne dans ces fichiers de projet de bibliothèque de classes, mais le problème se situe uniquement dans le projet MVC. Habituellement, ces types de problèmes sont résolus en redémarrant Visual Studio: non seulement j'ai redémarré Visual Studio, mais j'ai également redémarré mon ordinateur et le problème IntelliSense n'est pas du tout résolu.

Y a-t-il d'autres étapes qui peuvent me permettre de récupérer IntelliSense?

Réponses:


209

Fermez Visual Studio. Supprimez le fichier <ProjectName> .v12.suo. Rouvrir la solution.


Merci pour l'info. J'essaierai cette astuce la prochaine fois si mon intellisense Visual Studio cesse de fonctionner à nouveau.
Emran Hussain

15
J'ai constaté que la suppression du fichier suo résout de nombreux problèmes. C'est comme l'équivalent Visual Studio d'un redémarrage. Merci de me le rappeler.
grahamesd

1
Oui ... a corrigé le problème pour moi maintenant. Ma ProjectName.v12.suotaille était de 982 Ko. Supprimé. Fermé la solution. Rouvert la solution et un nouveau a ProjectName.v12.suoété créé. Intellisense est de retour mais ce nouveau .suofichier ne fait plus que 500 Ko maintenant. Vraiment intéressant. Peut-être que Microsoft devrait corriger ce mauvais comportement? D'une manière ou d'une autre, VS perd Intellisense et c'est vraiment pénible de travailler sans lui. :)
Leniel Maccaferri

3
N'a pas travaillé pour moi. Ce qui a fonctionné pour moi, c'est la réinitialisation de mes paramètres.
DougCouto

Cela résout le problème IntelliSense mais vous perdez également tous les points d'arrêt, signets, etc. en même temps.
Andreas

68

Remise à zéro mes paramètres ou l' importation précédemment exportés, les paramètres de travail, et le redémarrage de Visual Studio a travaillé: Tools > Import and Export Settings... > Reset all settings.

EDIT: Cela n'arrête pas de m'arriver, étonnamment souvent dans VS Express, et parfois dans VS Professional. Une chose que j'ai remarquée dans Pro, c'est que cela s'est produit après des arrêts inattendus (lorsque le service informatique force un redémarrage au milieu de la nuit). Cela peut donc être lié au fait que Visual Studio ne se ferme pas correctement. La technique décrite ci-dessus a fonctionné à chaque fois.


1
Merci, aujourd'hui, j'ai eu à nouveau le problème Intellisense et votre solution a résolu le problème.
Emran Hussain

1
Merci, cela a fonctionné pour moi aussi. Si vous lisez en bas, essayez ceci avant de supprimer toutes vos extensions.
Juste un autre Steve le

: DI a en fait supprimé toutes mes extensions en premier. Quoi qu'il en soit, cela a fonctionné!
Luis Lavieri

cela a également résolu mon problème
Contractorswolf

C'était la meilleure option. Excellent.
Nelson Miranda

35

Outils> Options> Editeur de texte> C #> Général

Assurez-vous que "Liste automatique des membres" est coché


Cela a fonctionné pour moi. La suppression du fichier .suo a fonctionné à de nombreuses reprises auparavant, mais cette fois non.
Craig

Cela a fonctionné pour moi. Visual Studio 2013. Le service informatique nous a basculé vers un nouveau domaine et a perdu tous les paramètres VS.
chaudières222

27

J'ai trouvé un moyen de résoudre le problème. Autrement dit, 1. -> Supprimez le projet ASP.NET MVC de la solution, 2. -> Ensuite, ajoutez le projet MVC à la solution.

En effectuant ces étapes, je peux obtenir à nouveau Intellisense. Mais, je ne suis pas satisfait de cette solution, car, la prochaine fois que je double-clique sur le fichier Solution pour ouvrir la solution, je vois que l'intellisense ne fonctionne plus. Je voudrais savoir la vraie raison pour laquelle il se comporte comme ça.

ÉDITER:

Enfin, j'ai compris que c'était une extension de studio visuel tiers qui causait le problème. Afin de découvrir cette extension, j'ai supprimé toutes les extensions, puis j'ai ajouté les extensions une par une et arrêté là où j'ai trouvé l'extension coupable qui m'empêchait de dormir :).


1
Je fais face à ça depuis un mois et ça me rend fou. Le retrait et la lecture de la solution (bien que pénible) ont également fonctionné pour moi. Merci!
NorthFork

6
Dans mon cas, c'était l'extension Xamarin, mais je ne veux pas dire du mal à propos de Xamarin, car leur support client est super excellent. Dès que j'ai signalé le problème, ils m'ont fourni la version corrigée rapidement. De plus, la version la plus récente de l'extension Xamarin ne semble plus avoir ce problème. Mon point est que la version spécifique de toute extension peut causer un tel problème, nous pouvons avoir besoin de désinstaller les extensions une par une pour savoir qui est à l'origine du problème. Par exemple, une future version de la bonne extension d'aujourd'hui peut également causer un tel problème. Nous devons faire attention dans ce cas.
Emran Hussain

2
Décharger le projet et le recharger a fonctionné pour moi aussi merci!
Rob

1
Dans mon cas, c'était l'extension Xamarin. Désinstallé et le problème a disparu. C'était aussi la dernière version!
Guy Lowe

1
J'ai eu le même problème avec l'extension Xamarin, mais pour une raison quelconque uniquement avec un projet particulier. C'était une version d'essai expirée alors je l'ai juste désinstallée et la coloration syntaxique est revenue.
GnomeCubed

8

Vous pouvez décharger le projet et recharger le projet MVC à partir de la solution

  1. Faites un clic droit sur le projet MVC dans l'explorateur de solutions -> "Décharger le projet"
  2. Faites un clic droit sur le projet MVC dans l'explorateur de solutions -> "Recharger le projet"

Après cela, la retouche Intellesense rapidement.


Excatement ce que j'ai écrit le 10 avril, bien! stackoverflow.com/a/29556005/1879699
Andreas

6
  • Outils -> Options
  • Éditeur de texte -> C # -> Intellisense
  • Assurez-vous que "Afficher la liste de complétion après la saisie d'un caractère" est coché

Achèvement du code Intellisense VS2013


1
Cela a fonctionné pour moi. Je ne sais pas si l'installation par défaut les a décochées, mais les éléments suivants n'ont pas été cochés pour moi et il s'agissait d'une nouvelle installation. "Liste automatique des membres" "Informations sur les paramètres". Je ne recevais pas non plus l'intellisense sur les paramètres de méthode. Le seul plugin que j'ai est GhostDoc
gcoleman0828

@ gcoleman0828 Merci! C'était la bonne réponse pour moi avec VS2013.
Rod Hartzell

5

Je ne sais pas pourquoi cela se produit, mais quand cela m'arrive, je peux récupérer Intellisense en redémarrant simplement Visual Studio.

Tu as raison, c'est vraiment ennuyeux.


4

Parfois, la réinitialisation des paramètres VS peut aider:

OUTILS-> Assistant d'importation et d'exportation des paramètres-> Réinitialiser tous les paramètres-> case à cocher "Non, il suffit de réinitialiser les paramètres, en écrasant mes paramètres actuels" -> Suivant> Suivant> Suivant

Je les avais dérangés avec RESHARPER, et cela a aidé.


2
eh bien, c'était comme ça pour moi, désolé. Je les avais dérangés avec les paramètres de RESHARPER.
d.popov

2
J'ai voté pour. Resharper a fait des ravages avec mes paramètres dans le passé.
Zac

Ceci n'est acceptable que pour quelqu'un qui n'a rien personnalisé.
t3chb0t

3

J'ai trouvé que la meilleure façon de résoudre les problèmes d'IntelliSense est simplement de décharger le projet dans l'explorateur de solutions et de charger à nouveau le projet. Après cela, IntelliSense fonctionne toujours pour moi et je ne perds pas de signets, de points d'arrêt ou d'autres paramètres.


1
C'est la manière la plus simple. TY
Caesar

1

J'ai trouvé que si la construction échoue, l'Intellisense semble se casser. Après avoir corrigé mes erreurs de construction et reconstruit le projet, Intellisense fonctionnera après le rechargement du fichier Razor particulier.


1

Dans mon cas, le redémarrage n'a pas fonctionné.

J'ai donc fait les étapes étranges suivantes:

  1. Fermé la solution
  2. A ouvert une autre solution
  3. Vérifié qu'intellisense fonctionnait dans cette autre solution.
  4. Fermé l'autre solution
  5. Enfin, a rouvert la première solution.

Et l'intellisense a fonctionné à nouveau.


Cela n'a pas fonctionné, mais c'était une bonne étape de dépannage pour voir si c'était le projet ou le studio visuel lui-même qui causait le problème.
redwards510

1

Cela se produit généralement lorsque les tampons contiennent une erreur. La plupart du temps, l'erreur de cache local est effacée lorsque vous fermez un formulaire Windows, par exemple et que vous le rouvrez, en le rechargeant en mémoire. La plupart des solutions ci-dessus fonctionnent, mais parfois c'est aussi simple que de fermer l'article et le concepteur et de rouvrir l'article.

De plus, vous pouvez essayer de forcer une réinitialisation en

Ctrl + K, Ctrl + I affiche des informations rapides Ctrl + Maj + Espace vous montre des informations de paramètres


1

J'ai essayé beaucoup de choses qui n'ont pas fonctionné. À la fin, j'ai coupé le code dans le presse-papiers, recréé le contrôleur et collé le code. Problème résolu!


1

J'ai aussi le même problème avec Intellisense dans mon éditeur de texte.

Je viens de closefichier example.cs qui ne fournit pas Intellisense et rouvre cette classe sans redémarrer Visual Studiocela fonctionne pour moi.

Remarque: je n'ai pas le même problème avec tous les fichiers .CS dans l'Explorateur de solutions


1

J'utilise VS 2013 et j'ai eu le même problème. Ma solution était de mettre à jour VS vers la dernière version. I my case Update 4. Simplement la référence dans le projet doit correspondre à l'assemblage dans GAC sur ordinateur (OS). Intellisense vient de VS pas du projet.

J'espère que cela sera utile pour quelqu'un.


1

... Encore une autre réponse - mais c'était la cause de ma douleur: j'avais installé Developer Assistant qui fonctionnait bien mais a soudainement cessé de fournir des suggestions. Pour le faire fonctionner à nouveau:

options -> assistant de développement -> Intellisense -> Visual Studio Intellisense par défaut

Il m'a fallu 5 heures pour trouver ça :(

HTH.


1
Tools->Options->Text Editor->C# (or All Languages)->General

cochez la case pour enable Auto List Memberset Parameter Informationdans le volet de droite.

S'il n'est pas sélectionné, sélectionnez-le.


0

Enregistrez tout et redémarrez Visual Studio!


0

J'obtiens exactement la même chose chaque fois que je travaille avec un projet MVC5 particulier. Le redémarrage de VS2013 ne fonctionne pas. La suppression des fichiers suo ne fonctionne pas. La réinitialisation de tous les paramètres des outils ne fonctionne pas. La seule chose qui fonctionne est de supprimer le projet de la solution et de l'ajouter à nouveau. Voir que je dois le faire tous les jours est vraiment très ennuyeux. Surtout quand je l'ai configuré pour rouvrir les derniers fichiers que j'avais ouverts, je dois ensuite retrouver ceux sur lesquels je travaillais et les rouvrir au lieu de les ouvrir automatiquement.


0

J'utilise VS 2013 avec MVC 5. La solution pour moi était d'ajouter ce qui suit à Web.config:

<compilation debug="true" targetFramework="4.5.1">
  <assemblies>
    <add assembly="System.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Optimization, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  </assemblies>
</compilation>

0

La solution de Rushonerok fonctionne très bien pour moi.
Pour tous ceux qui ne le savent pas: <ProjectName> .v12.suo est un fichier caché dans le dossier racine du projet. Vous devez définir sur "Afficher les fichiers cachés" dans votre navigateur de fichiers pour le voir.


0

Jusqu'à présent, certaines de ces solutions n'ont pas fonctionné pour moi.

J'ai la solution de contournement suivante

Déclarez simplement le type que vous souhaitez utiliser explicitement dans une nouvelle variable et utilisez-le à la place de Model.

@model MyModel
MyModel mymodel = Model;

@mymodel.MyIntelisenseIsWorkingAgain

0

Pour résoudre ce problème, j'ai fermé Visual Studio Express 2013 et j'ai rouvert la solution en double-cliquant sur son .slnfichier directement à partir du système de fichiers. L'ouvrir à partir de la page de démarrage a cassé l'intellisense de mes contrôleurs.


0

La fermeture et l'ouverture de la solution Visual Studio ont fonctionné pour moi.


0

Parfois, vous le fermez par erreur. Essayez ctrl+spacepour Windows ou cmd+spacepour Mac pour l'activer.


0

Je sais que je suis un peu en retard, mais l'ajouter à mon App.configdossier a fait l'affaire!

<system.web>
    <compilation>
        <assemblies>
            <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
        </assemblies>
    </compilation>
</system.web>
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.