web-dev-qa-db-fra.com

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

Je suis confronté à un problème étrange dans mon projet Visual Studio 2013 ASP.NET MVC 5. Tout à coup, l’IntelliSense dans les classes de contrôleurs du projet MVC 5 ne fonctionne plus du tout.

Ma solution contient d'autres projets de bibliothèque de classes et IntelliSense fonctionne dans ces fichiers, mais le problème ne concerne que le projet MVC. Généralement, 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 toujours pas résolu.

Existe-t-il d'autres étapes susceptibles de me permettre de récupérer IntelliSense?

131
Emran Hussain

J'ai trouvé un moyen de résoudre le problème. C'est-à-dire 1. -> Supprimez le projet ASP.NET MVC de Solution, 2. -> Ajoutez ensuite le projet MVC à la solution.

En effectuant ces étapes, je peux obtenir à nouveau l'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 constate que l’intellisense ne fonctionne plus. Je voudrais savoir la vraie raison pour laquelle il se comporte comme ça.

MODIFIER:

Finalement, j'ai compris que c'était une extension de studio visuel tiers qui posait 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 du coupable qui m'empêchait de dormir :).

27
Emran Hussain

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

208
Rush Frisby

Réinitialiser mes paramètres ou importer des paramètres de travail précédemment exportés, et redémarrer Visual Studio fonctionnait: Tools > Import and Export Settings... > Reset all settings.

EDIT: Cela m’arrive souvent, étonnamment souvent dans VS Express et occasionnellement 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 ferme pas correctement. La technique décrite ci-dessus a fonctionné à chaque fois.

68
Jeremy Cook

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

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

36
phil

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

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

Après cela, Intellesense retravaille rapidement.

8
ArDumez
  • Outils -> Options
  • Éditeur de texte -> C # -> Intellisense
  • Assurez-vous que l'option "Afficher la liste d'achèvement après la saisie d'un caractère" est cochée.

Achèvement du code intellisense VS2013

6
Sherif Hamdy

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

Tu as raison, c'est vraiment énervant. 

5
JWilson

Parfois, la réinitialisation des paramètres du 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 les paramètres actuels" -> Suivant> Suivant> Suivant

Je les avais embêtés avec RESHARPER, et cela a aidé.

4
d.popov

J'ai constaté que le meilleur moyen de résoudre les problèmes d'IntelliSense est simplement de décharger le projet dans l'explorateur de solutions et de le charger à nouveau. Après cela, IntelliSense travaille toujours pour moi et je ne perds pas les signets, les points d'arrêt ou tout autre paramètre.

3
mrt

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

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

1
Piotr Knut

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

1
Andy Brown

... 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 faire des suggestions. Pour que cela fonctionne à nouveau:

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

Il m'a fallu 5 heures pour constater que :(

HTH.

1
sming

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

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

Ctrl + K, Ctrl + I affiche des infos rapides Ctrl + Maj + Espace vous montre des infos param

1
Mark Alicz

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

je viens close fichier example.cs qui ne fournit pas Intellisense et rouvrez cette classe sans redémarrer Visual Studio it travaille pour moi.

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

1
Midhun Mundayadan

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

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

  1. Fermé la solution
  2. Ouvert une autre solution
  3. Vérifié que IntelliSense a fonctionné dans cette autre solution.
  4. Fermé l'autre solution
  5. Enfin, rouvrez la première solution.

Et l'intellisense a encore fonctionné.

J'ai constaté que si la construction échouait, alors l'Intellisense semblait en panne. Après avoir corrigé mes erreurs de construction et reconstruit le projet, Intellisense fonctionnera après le rechargement du fichier Razor.

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

cochez la case enable Auto List Members et Parameter Information dans le volet de droite.

Si ce n'est pas sélectionné, sélectionnez-le.

1
thejustv

Je reçois 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 de fichiers suo ne fonctionne pas . La réinitialisation de tous les paramètres d'outils ne fonctionne pas . La seule chose qui marche, c’est de supprimer le projet de la solution et de l’ajouter à nouveau . Voir ce que je dois faire tous les jours est vraiment très ennuyant . Surtout quand je l’ai paramétré pour rouvrir les derniers fichiers I ouvert, j’ai alors besoin de retrouver ceux sur lesquels je travaillais et de les rouvrir au lieu de les faire apparaître automatiquement.

0
Pyrobri

Pour résoudre ce problème, j'ai fermé Visual Studio Express 2013 et j'ai rouvert la solution en double-cliquant sur son fichier .sln directement à partir du système de fichiers. En l’ouvrant à partir de la page de démarrage, mes contrôleurs intellisense ont été cassés.

0
CoderRoller

Parfois, vous le fermez par erreur. Essayez ctrl+space pour Windows ou cmd+space pour mac pour l’activer.

0
picacode

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

J'ai la solution suivante

Déclarez simplement le type que vous voulez utiliser explicitement dans une nouvelle variable et utilisez-le au lieu de Model.

@model MyModel
MyModel mymodel = Model;

@mymodel.MyIntelisenseIsWorkingAgain
0
Valamas

Sauvegardez tout et redémarrez Visual Studio!

0
Chris

Fermer et ouvrir la solution Visual Studio a fonctionné pour moi.

0
Unbreakable

La solution de Rushonerok me convient parfaitement.
Pour ceux qui ne savent pas: <NomProjet> .v12.suo est un fichier caché dans le dossier racine du projet. Vous devez définir "Afficher les fichiers cachés" dans votre navigateur de fichiers pour le voir. 

0
Petr

J'utilise VS 2013 avec MVC 5. La solution pour moi consistait à ajouter les éléments suivants à 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
Steven

Je sais que je suis un peu en retard, mais l'ajouter à mon fichier App.config 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>
0
Human_AfterAll