visual-studio-2013 - Visual Studio 2013 IntelliSense funktioniert nicht mehr für ASP.NET MVC5-Controller




asp.net-mvc-5 (21)

Ich habe ein seltsames Problem in meinem Visual Studio 2013 ASP.NET MVC 5-Projekt. Plötzlich funktioniert das IntelliSense in den Controller-Klassen des MVC 5-Projekts überhaupt nicht.

Ich habe andere Klassenbibliotheksprojekte in meiner Lösung und IntelliSense arbeitet in diesen Klassenbibliotheksprojektdateien, aber das Problem besteht nur innerhalb des MVC-Projekts. In der Regel werden diese Probleme durch einen Neustart von Visual Studio gelöst: Ich habe Visual Studio nicht nur neu gestartet, sondern auch meinen Computer neu gestartet, und das IntelliSense-Problem wird überhaupt nicht behoben.

Gibt es noch andere Schritte, die mir IntelliSense zurückbringen können?


Answers

Ich fand, dass das Lösen von Projekten im Solution Explorer und das erneute Laden des Projekts der beste Weg ist, IntelliSense-Probleme zu beheben. Danach arbeitet IntelliSense immer für mich und ich verliere keine Lesezeichen, Haltepunkte oder andere Einstellungen.


Extras> Optionen> Texteditor> C #> Allgemein

Stellen Sie sicher, dass "Mitglieder automatisch auflisten" aktiviert ist


... Noch eine andere Antwort - aber das war die Ursache meines Schmerzes: Ich hatte den Entwickler-Assistenten installiert, der gut funktioniert hatte, aber plötzlich keine Vorschläge mehr gab. Damit es wieder funktioniert:

Optionen -> Entwicklerassistent -> Intellisense -> Standard Visual Studio Intellisense

Nahm mich 5 Stunden, um das zu finden :(

HTH.


Bisher haben einige dieser Lösungen für mich nicht funktioniert.

Ich habe die folgende Problemumgehung

Deklarieren Sie einfach den Typ, den Sie explizit in einer neuen Variablen verwenden möchten, und verwenden Sie diesen anstelle von Model .

@model MyModel
MyModel mymodel = Model;

@mymodel.MyIntelisenseIsWorkingAgain

Das Zurücksetzen meiner Einstellungen oder das Importieren zuvor exportierter, funktionierender Einstellungen und das Neustarten von Visual Studio funktionierten: Tools > Import and Export Settings... > Reset all settings Einstellungen importieren und exportieren Tools > Import and Export Settings... > Reset all settings .

EDIT: Das passiert mir immer wieder, überraschend oft in VS Express und gelegentlich in VS Professional. Eine Sache, die ich bei Pro bemerkt habe, ist, dass es nach unerwarteten Abstellungen passiert ist (wenn IT mitten in der Nacht einen Neustart erzwingt). Es kann also sein, dass Visual Studio nicht korrekt geschlossen wird. Die oben beschriebene Technik hat jedes Mal funktioniert.


Das Schließen und Öffnen der Visual Studio-Lösung funktionierte für mich.


Ich verwende VS 2013 mit MVC 5. Die Lösung für mich bestand darin, Web.config folgendes hinzuzufügen:

<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>

Schließen Sie Visual Studio. Löschen Sie die Datei <ProjectName> .v12.suo. Lösung erneut öffnen


Normalerweise passiert dies, wenn die Puffer einen Fehler enthalten. Meistens wird der lokale Cache-Fehler gelöscht, wenn Sie beispielsweise ein Windows-Formular schließen und erneut öffnen, um es erneut in den Speicher zu laden. Viele der obigen Lösungen funktionieren, aber manchmal ist es so einfach, wie den Artikel und den Designer zu schließen und den Artikel wieder zu öffnen.

Zusätzlich können Sie versuchen, einen Reset durch zu erzwingen

Strg + K, Strg + I zeigt Quick Info Strg + Shift + Leertaste zeigt Ihnen die Parameter Info


Speichern Sie alles und starten Sie Visual Studio neu!


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

enable Auto List Members Sie das Kontrollkästchen für die enable Auto List Members und Parameter Information enable Auto List Members Parameter Information im rechten Fensterbereich.

Wenn es nicht ausgewählt ist, wählen Sie es aus.


Ich benutze VS 2013 und ich hatte das gleiche Problem. Meine Lösung war Update VS auf die letzte Version. Ich meine Fall Update 4. Einfach Referenz in Projekt muss mit Assembly in GAC auf Computer (OS) übereinstimmen. Intellisense kommt von VS nicht vom Projekt.

Ich hoffe, dass das für jemanden nützlich ist.


Ich habe einen Weg gefunden, das Problem zu lösen. Das heißt, 1. -> Entfernen Sie das ASP.NET MVC-Projekt von Solution, 2. -> Fügen Sie dann das MVC-Projekt zurück zur Lösung hinzu.

Indem ich diese Schritte mache, kann ich das Intellisense wieder bekommen. Aber ich bin nicht glücklich mit dieser Lösung, denn wenn ich das nächste Mal, wenn ich die Lösungsdatei doppelklicke, um die Lösung zu öffnen, sehe ich, dass das Intellisense nicht mehr funktioniert. Ich würde gerne den wahren Grund wissen, warum es sich so verhält.

BEARBEITEN:

Schließlich fand ich heraus, dass es eine Visual Studio Erweiterung von Drittanbietern war, die das Problem verursacht hat. Um diese Erweiterung herauszufinden, entfernte ich alle Erweiterungen und fügte dann die Erweiterungen einzeln hinzu und stoppte, wo ich die Täter-Erweiterung fand, die mir den Schlaf nahm :).



Rushoneroks Lösung funktioniert gut für mich.
Für alle, die es nicht wissen: <ProjectName> .v12.suo ist eine versteckte Datei im Projektstammverzeichnis. Sie müssen auf "Versteckte Dateien anzeigen" in Ihrem Dateibrowser einstellen, um es zu sehen.


Sie können das Projekt entladen und das MVC-Projekt erneut aus der Lösung laden

  1. Rechtsklick auf MVC-Projekt im Solution Explorer -> "Projekt entladen"
  2. Rechtsklick auf MVC-Projekt im Solution Explorer -> "Projekt neu laden"

Danach werden die Intellense schnell überarbeitet.


Um das .sln zu lösen, habe ich Visual Studio Express 2013 geschlossen und die Lösung erneut geöffnet, indem .sln direkt aus dem Dateisystem auf die .sln Datei .sln . Öffnen Sie es von der Startseite hatte meine Controller Intellisense gebrochen.


Ich habe viele Dinge ausprobiert, die nicht funktionierten. Am Ende habe ich Code in die Zwischenablage geschnitten, den Controller neu erstellt und den Code eingefügt. Problem gelöst!


Ich bekomme jedes Mal dasselbe, wenn ich mit einem bestimmten MVC5-Projekt arbeite. Der Neustart von VS2013 funktioniert nicht. Das Löschen von SUO-Dateien funktioniert nicht. Das Zurücksetzen aller Werkzeugeinstellungen funktioniert nicht. Das einzige, was jemals funktioniert, ist, das Projekt aus der Lösung zu entfernen und es erneut hinzuzufügen. Zu sehen, wie ich das jeden Tag machen muss, ist wirklich ziemlich nervig. Vor allem, wenn ich die zuletzt geöffneten Dateien wieder öffnen möchte, muss ich die Dateien, an denen ich gerade gearbeitet habe, aufspüren und sie wieder öffnen, anstatt automatisch aufzutauchen.


Ich bin mir nicht sicher, warum das passiert, aber wenn es mir passiert, kann ich Intellisense wiederherstellen, indem ich einfach Visual Studio neu starte.

Du hast recht, es ist wirklich nervig.


Sorry für das Hinzufügen zu der langen Liste, aber ich hatte ein ganz anderes Problem. Zuerst möchte ich erwähnen, dass ich mein Problem beim Klicken auf "Alles ausführen" im Test-Explorer und dann im Build-Ausgabefenster in Visual Studio entdeckt habe. Sie müssen es aktiv beobachten, denn danach verschwindet die Nachricht.

Was das Problem anbelangt, sieht es so aus, als würde die DLL während des Scannens der Tests geladen und ihre Testtypen aufgelistet. Dies führt dazu, dass die Referenzen geladen werden und wenn während dieses Prozesses ein Fehler auftritt, werden die Tests nicht im Explorer angezeigt. Ich hatte zwei Probleme, die verhinderten, dass die Test-DLL erfolgreich geladen wurde:

  • Es gab immer noch eine verbindliche Umleitung in der Konfigurationsdatei (umleitung zu einer Version niedriger Version NHiberate als das, was im Testprojekt referenziert wurde).
  • Eine widersprüchliche Assembly-Referenz (Referenzen der 2. Ebene können nicht geladen werden). AsmSpy ist übrigens ein großartiges Werkzeug, um nach diesen zu suchen.




visual-studio-2013 intellisense asp.net-mvc-5