Frage Beim Upgrade auf Visual Studio 2015 wird Intellisense für das Projekt unterbrochen


Ich hatte viele ähnliche Probleme, konnte aber nichts finden, was für mich funktionierte.

Ich aktualisiere meine IDE von der VisualStudio for Web (v10) zur Visual Studio 2015 (v14, nehme ich an) Community Edition. Das Hauptprojekt, das ich versuche, auf der neuen IDE zu verwenden, ist eine MVC 5 (5.2.3), mit EF 6.1 (6.1.3) und eine Menge anderer Sachen.

Problem ist: Wenn Sie das Projekt auf der neuen IDE öffnen, sieht alles gut aus (es kompiliert sogar und arbeitet). Ich habe das MVC-Kontextmenü im Projekt-Explorer (zeigt die "Add Controller ..." und "Add View ..." wenn zutreffend). Einzig (wirklich nerviges) Ding ist das Razor Intellisense.

Wenn ich eine View-Datei (.cshtml) öffne, erhalte ich Warnungen auf mehreren Helfern, einige der "Verwendung" sind ausgegraut (obwohl sie benötigt werden) und das @model myModel wird wie alles nach dem @ angezeigt Modellanweisung ist nicht Rasierer (es wird wie HTML behandelt durch die Intellisense-Färbung).

Was ich schon gefunden und versucht habe:

    • Ich habe bereits versucht, die UserData von der vs (devenv / ResetUserData) zu löschen
    • Ich habe bereits versucht, den VS2015 im abgesicherten Modus laufen zu lassen
    • Ich habe bereits versucht, VS2015 als Administrator auszuführen
    • Ich habe bereits versucht, das Ziel-Framework des Projekts auf 4.5.1 zu setzen (früher 4.5)
    • Ich habe bereits versucht, das Projekt in Visual Studio Community 2013 zu öffnen und es dort zu speichern, bevor ich versuche, es auf VS2015 zu verwenden.

Wenn Sie ein anderes MVC-Projekt vom VS2015 erstellen, funktioniert alles einwandfrei.

Hier ist ein Beispiel für das lästige Problem:

enter image description here


6
2017-07-30 20:35


Ursprung


Antworten:


Ok, endlich verstanden. Was ich herausgefunden habe, glaube, dass es jemand anderem helfen könnte:

  1. Was das genannte Problem verursacht, ist die Tatsache, dass das Projekt auf einer alten MVC-Version (mit älteren Razor, EF, etc.) erstellt wurde.

  2. Wie in dieser Antwort angegeben: Visual Studio 2015 Razor View MVC-Typen werden nicht erkannt, VS2015-Tools funktionieren möglicherweise nicht für ältere MVCs.

  3. Die Lösung besteht darin, alle Ihre Pakete auf [mindestens] die kleineren Versionen zu aktualisieren, die auf neueren MVCs (5?) Akzeptiert werden. Um dies zu tun, können Sie die Liste auf dieser Website verwenden: http://www.asp.net/mvc/overview/releases/how-to-upgrade-a-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and-web- api-2.

  4. Sobald alles auf dem neuesten Stand ist, öffnen Sie die Dateien web.config, die sich im Stammverzeichnis Ihrer Anwendung und im Ordner Ansichten befinden. Dort finden Sie wahrscheinlich Hinweise auf ältere Versionen von MVC und Razor. Aktualisieren Sie diese Versionswerte (alle) so, dass sie mit den aktualisierten Versionen Ihrer Pakete übereinstimmen (Sie können ein neues leeres MVC-Projekt im neuen Visual Studio erstellen und nach diesen Werten suchen, um einen Hinweis darauf zu erhalten, was sie sein sollten).

    Dieser Schritt ist der Haken! Auch wenn Sie die Pakete Ihres Projekts aktualisieren, können einige web.config-Verweise die ursprünglichen Versionen noch erwähnen.

  5. Säubern Sie die Lösung (Build> Clean Solution) und schließen Sie das Projekt. Erneut öffnen und kompilieren. Jetzt sollte [hoffentlich] alles gut funktionieren.

[Bearbeiten]

  1. Eine weitere Sache: Wenn Ihr Projekt während dieses IDE-Übergangs ebenfalls von Framework 4.5 auf 4.5.1 aktualisiert wurde, sollten Sie auch ein NuGet-Paket namens "Microsoft.CodeDom.Providers.DotNetCompilerPlatform" installieren (wie in https://support.microsoft.com/en-us/kb/3025133).

6
2017-07-31 05:25