Visual Studio 2015 weder Syntax, die Rasiermesser hervorhebt, noch Intellisense

121

Meine Razor-Ansichten in VS2015 RC zeigen nicht die richtige Farbe für C # -Code. Mein Projekt hat in VS2013 gut funktioniert, aber es ist nicht im Jahr 2015 und es gibt mir kein Intellisense für den C # -Code. Die Lösung wird erstellt und die Site läuft einwandfrei.

Ich habe folgendes vergeblich versucht

  • Deaktivieren aller Visual Studio-Erweiterungen
  • meine .suoDatei löschen
  • Entfernen Sie das Projekt und fügen Sie es erneut zur Lösung hinzu

Wie kann ich das beheben?

Beispiel:

DLeh
quelle
3
Haben Sie darüber nachgedacht, auf eine vollständige Veröffentlichung zu warten? Der aktuelle ist immer noch ziemlich fehlerhaft und nur als Vorschau für Ungeduldige gedacht.
Walther
Haben Sie die Produktivitätswerkzeuge installiert? In meinem Fall stürzten sie viel in vs ... Curretnly bekam jetzt Highlight in vNext PRojects
Boas Enkler
Dies tritt immer noch in VS2015 Professional auf. Keine der Antworten in diesem Thread löst das Problem dauerhaft. Die Syntaxhervorhebung bleibt unterbrochen.
Justin Skiles
Falls keine der folgenden Antworten das Problem löst, können Sie hier einen Blick darauf werfen: stackoverflow.com/questions/33245041/… Durch die Installation von .NET Core 1.0.0 wurde das Problem für mich behoben. Ich habe mit demselben Problem begonnen, hatte aber auch ein Problem mit den Webvorlagen (für neue Projekte nicht verfügbar). Das Häkchen bei "Microsoft Web Developer Tools" (wie in einer der folgenden Antworten beschrieben) wurde immer aktiviert.
Ruard van Elburg
Überprüfen Sie Ihre Version von MVC. Wenn es 3 oder weniger ist, wird es von VS 2015 nicht unterstützt.
RMuesi

Antworten:

215

Ich habe in dieser Antwort einen anderen Weg gefunden, um es ohne das zu behebendevenv.exe /ResetUserData

Löschen Sie einfach den Inhalt dieses Verzeichnisses bei geschlossenem Visual Studio: %LocalAppData%\Microsoft\VisualStudio\<visual_studio_version_number>\ComponentModelCache

Die Versionsnummer der von Ihnen ausgeführten Visual Studio Edition finden Sie in dieser Liste. Beachten Sie, dass nur die Hauptnummer wichtig ist, die Nebenversion kann und wird wahrscheinlich unterschiedlich sein. In meinem Fall hatte ich Visual Studio 2017 Enterprise installiert, also habe ich im AppData-Ordner gesucht 15.xxund gefunden 15.0_9a1c4a06.

Fabriciorissetto
quelle
7
Das hat bei mir funktioniert. VS 2015 Enterprise Version 14.0.23107.0 D14REL
Toft
3
Vielen Dank. Das ist der bessere Weg, anstatt alle Benutzerdaten in VS2015 Enterprise zurückzusetzen
kapsiR
1
Arbeitete für VS 2015 Enterprise
Law
4
Dies sollte die
Hauptlösung sein
1
Das hat bei mir funktioniert und ich stimme zu, dass dies die Hauptlösung sein sollte. Ich benutze die Professional-Version. Vielen Dank.
Jón Viðar Þorsteinsson
52

Ich hatte das gleiche Problem. Die einzige Lösung besteht bisher darin, alle Benutzerdaten zurückzusetzen ( C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe /ResetUserData).

HINWEIS: In diesem Fall gehen alle Anpassungen verloren, z. B. Tastaturkürzel und Fensterlayouts.

BEARBEITEN: Die Leute sagen, dass dies nur für RC funktioniert, nicht für RTM. Vielleicht möchten Sie zuerst die anderen Korrekturen ausprobieren.

Geir Sagberg
quelle
Dies ist wahrscheinlich nicht die beste Lösung, aber es hat bei mir funktioniert! Vielen Dank! Ich frage mich, ob es etwas mit der Installation früherer CTP-Versionen zu tun hat.
DLeh
2
Sie können die Tastenkombinationen vorher exportieren und anschließend wiederherstellen
Konsole
Ist das '>' Caret richtig in dieser Kommandozeile? Es hat bei mir funktioniert, indem ich das durch einen Schrägstrich ersetzt habe. Aber diese Lösung hat dann auch bei mir funktioniert!
Nicholas Petersen
1
Und du verlierst alle Addons.
Knerd
1
Ich habe eine Enterprise-Version (VS 2015) . Gibt es eine mögliche Lösung für diese Version? Die obige Lösung hat bei mir nicht funktioniert.
Zeeshan
26

Ich hatte das gleiche Problem in VS 2015 RTM und konnte es beheben, indem ich Visual Studio einfach im abgesicherten Modus lud, indem ich:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe /SafeMode

dann schließen und wieder normal öffnen.

Kevin
quelle
1
Es hat bei mir funktioniert, es lohnt sich zu versuchen. Sie werden Ihre aktuellen Einstellungen nicht verlieren.
Nick
Dies hat bei mir nicht funktioniert, dieser Fehler wird auch im SafeMode angezeigt (und natürlich nach dem erneuten Öffnen auf "Standard" Weise).
T-Moty
Vielen Dank, dass Sie mich vor dem Verlust meiner Einstellungen bewahrt haben!
Grmbl
Arbeitete an meinem VS 2015 Enterprise
Tamim Al Manaseer
Genial! arbeitete auch für mich. Einen Versuch wert, ich habe meine Einstellungen bei den letzten Gelegenheiten ausgeblasen.
Diego
10

Nach dem Update von Visual Studio 2015 Update 1 hatte ich das gleiche Problem. Ich habe alle Antworten ausprobiert, aber bei mir nicht funktioniert.

Das Update für mich war Programme und Eigenschaften> Visual Studio Community Edition> Ändern. Ich habe auf Ändern geklickt.

Stellen Sie in der Liste sicher, dass "Microsoft Web Developer Tools" unter "Windows and Web Development" aktiviert ist.

Es wurde in meiner Liste jedoch nicht überprüft: /

Geben Sie hier die Bildbeschreibung ein

Bahtiyar Özdere
quelle
Als ich das versuchte, kam das Häkchen leider gerade zurück. : <Es weigerte sich zu gehen. : <Immer noch mit diesem Problem stecken. : <Im Moment bei VS sehr abgehakt. : <große Zeitsenke.
PHenry
Schauen Sie hier: stackoverflow.com/questions/33245041/… Die Symptome sind die gleichen. Ich habe dieses Problem durch die Installation von .NET Core 1.0.0
Ruard van Elburg am
7

Extras> Optionen> Texteditor> Alle Sprachen> Allgemein. Deaktivieren Sie die Option Erweiterte Mitglieder ausblenden. OK klicken.

Sobald ich das getan hatte, schien Intellisense für mich zu funktionieren. Ich habe es dann zurückgesetzt und die Funktionalität beibehalten. Ich verwende Visual Studio 2015 Enterprise Edition.

Ich hatte ResetUserData ausprobiert und das funktionierte bei mir nicht.

Postmita
quelle
1
Nun, es hat funktioniert, dann hat es gleich wieder funktioniert
Shawn
1
Dies hat bei mir mit c # nicht funktioniert. Ich wollte jedoch zu Texteditor> C # gehen und das Kontrollkästchen "Erweiterte Mitglieder ausblenden" aktivieren / deaktivieren, dann OK drücken und Intellisense wieder arbeiten.
Todilo
Dies funktionierte auch für mich und war dem Zurücksetzen meiner Umgebung weit vorzuziehen!
Paul Carroll
Es wird immer wieder überprüft, nachdem ich es deaktiviert habe
Tony_Henrich
Ich hatte ein Problem, bei dem das Intellisense-Menü für den Bruchteil einer Sekunde angezeigt und dann ausgeblendet wurde. Dadurch wurde das Problem behoben, und jetzt bleibt das Menü wie erwartet sichtbar.
X3074861X
6

Ich habe Visual Studio Community Edition 2015 installiert (nachdem ich Visual Studio Community Edition 2013 für längere Zeit verwendet habe) und war mit demselben Problem konfrontiert. Ich habe alle oben genannten Lösungen ausprobiert, aber nichts hat geholfen.

Schließen Sie schließlich Visual Studio und löschen Sie die folgenden Ordner:

C:\Users\Allwyn\AppData\Roaming\Microsoft\VisualStudio\14.0
C:\Users\Allwyn\AppData\Roaming\Microsoft\VisualStudio\14.0

... und es funktioniert jetzt !!!

Allwyn Dsouza
quelle
Dies funktionierte für mich (Vollversion) VS 2015 Enterprise Edition
hal9000
Manchmal funktioniert das und manchmal nicht. Es hat es für mich für ungefähr 5 Minuten repariert, dann fing es wieder an.
Justin Skiles
Dies hat mein Problem zumindest für den Moment behoben. Es könnte nicht weiter funktionieren, aber wir werden sehen. Scheint ein seltsamer Fehler zu sein und etwas, das Microsoft beheben sollte. Diese Ausgabe war in 2015 und 2017
Deathstalker
5

Ausführen von VS 2015 RTM. Weder / ResetUserData noch / SafeMode haben bei mir funktioniert. Außerdem gab es einige Produktivitäts-Power Tools 2015-bezogene Beschwerden mit dem Popup "Errors-in-ActivityLog.xml" beim Starten von VS.

Wenn Sie ähnliche Symptome haben, habe ich diese auf meinem Computer folgendermaßen behoben:

  1. Starten Sie "Experimentelle Instanz von Visual Studio 2015 starten" und öffnen Sie Ihr Projekt. Wenn der Intellisense funktioniert und die Rasierersyntax hervorgehoben ist, haben Sie große Chancen, dass Folgendes funktioniert.
  2. Deinstallieren Sie "Productivity Power Tools 2015" und schließen Sie Visual Studio.
  3. Gehen Sie zum Ordner %LOCALAPPDATA%\Microsoft\VisualStudio\und löschen Sie ihn 14.0.
  4. Starten Sie VS - es sollte so starten, wie es gerade installiert wurde.

PS Eigentlich habe ich ein paar Mal gebraucht, um mein Intellisense zum Laufen zu bringen, da ich zuerst die PowerTools deaktiviert habe und VS bei erneuter Aktivierung erneut unterbrochen wurde. Daher ist eine vollständige Neuinstallation erforderlich. Könnte in Ihrem Fall durch eine andere Erweiterung verursacht werden.

Vladimir Abashin
quelle
Funktioniert bei mir! Visual Studio 2015 Enterprise.
Timber
Funktioniert bei mir ohne Deinstallation von "Productivity Power Tools 2015". Visual Studio 2015 Enterprise.
ShurikEv
4

Dies ist der Effekt, wenn Ihr Projekt MVC4 ist. Weitere Details finden Sie hier . Beachten Sie auch, dass dies in einer kommenden Version korrigiert wird.
Wie können Sie feststellen, ob Ihr Projekt MVC4 ist? Öffnen Sie packages.config und scrollen Sie zum Eintrag für Microsoft.AspNet.Mvc. Wenn die aufgeführte Version mit "4" beginnt, bedeutet dies, dass Sie MVC 4 verwenden.

Van Kichline
quelle
Dies ist in der Tat das Problem für mich und / resetuserdata hilft nicht :(
chrilith
Für weitere Informationen: asp.net/mvc/overview/releases/…
Micaël Félix
Es hat nichts mit MVC4 zu tun. Projekte mit MVC5 und 6 leiden immer noch unter diesen Problemen.
Justin Skiles
Das ist es, was ich schließlich als Ursache herausgefunden habe. Mein Projekt war MVC 3. VS 2015 unterstützt MVC 3 nicht. Nichts anderes, was ich versucht habe, hat funktioniert.
RMuesi
4

Ich hatte ein ähnliches Problem, bei dem kein Rasiermesserskript hervorgehoben wurde, Intellisense nicht funktionierte und der Compiler keine Fehler erkannte (selbst wenn ich absichtlich Syntaxfehler einfügte!).

Ich habe das Problem tatsächlich behoben, indem ich zu C: / Users / YourUserName / AppData / Local / Temp gegangen bin und alles aus dieser Datei gelöscht habe, sobald ich das getan und VS neu gestartet habe. Meine Razor Views haben angefangen zu funktionieren!

Hoffentlich hilft das!

reece240692
quelle
Das hat bei mir funktioniert. Ich musste auch einige Elemente im Razor-Server-Ordner manuell löschen, die beim Kompilieren gesperrt wurden.
Rudy Scoggins
3

Einige Ansichten funktionierten gut für mich, andere überhaupt nicht ... Das einzige, was mir geholfen hat:

  • VS schließen
  • Löschen von C: \ Benutzer \% Benutzername% \ AppData \ Local \ Temp
  • VS neu starten
  • Problem gelöst

Ich habe auch die meisten anderen Lösungen ausprobiert, aber sie haben bei mir nicht funktioniert.

Roger
quelle
2

Freundliche Erinnerung, um sicherzustellen, dass Sie den Kleinbuchstaben @modeloben in Ihrer Ansicht richtig verwendet haben und nicht @Model(wie ich den Fehler gemacht habe).

Kleinbuchstaben @modelsind Anweisungen, die die Ansicht stark in eine Instanz der darauf folgenden Klasse eingeben. Während die aktivierte Modelist eine Eigenschaft der Ansicht , dass die Modellinstanz wird.

Kevin Collins
quelle
1

Ich habe das Problem behoben, indem ich die Datei in das Projekt / die Lösung aufgenommen habe. Ich hatte die Tatsache übersehen, dass es keine Hervorhebung / Intellisense gibt, wenn es nicht enthalten ist.

Dave Clarke
quelle
0

Ich hatte das gleiche Problem und musste "Microsoft ASP.NET und Web Tools" und "Web Essentials" herunterladen und installieren. Nach dieser Syntaxhervorhebung begann Razor Intellisense wieder zu arbeiten.

Ogglas
quelle
Hatte keine Wirkung für mich. VS2015 Professional.
Justin Skiles
Ich benutze VS2015 Community. Haben Sie die Lösung von Geir Sagbergs ausprobiert? In CMD ausführen: "C: \ Programme (x86) \ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ devenv.exe" / ResetUserData
Ogglas
2
Ja. Ich habe jede Lösung in jedem Thread auf StackOverflow ausprobiert. Nichts hat funktioniert. Ich habe sogar VS und mein Betriebssystem neu installiert.
Justin Skiles
Wenn Sie nach der Neuinstallation ein neues Konsolenprojekt erstellen, funktioniert es dort nicht?
Ogglas
0

Das Deinstallierte und Neuinstallierte von Folgendem hat bei mir funktioniert:

Microsoft.AspNet.Mvc

Microsoft.AspNet.WebPages

Microsfot.AspNet.Razor

Ich habe versucht, Benutzerdaten zurückzusetzen, Temp und 14 zu löschen sowie die Optionseinstellungen zu ändern, und keine davon hat funktioniert. Ich habe sogar versucht, repariert und neu installiert. Ich verwende VS 2015 Version 14.0.24720.00 Update 1

wirble
quelle
Dies funktionierte auch für mich. Ich hatte eine MVC4-Site, an der ich in VS2013 gearbeitet hatte, da bis Update 1 keine Unterstützung vorhanden war. Nach der Installation von Update 1 funktionierte es 2015 immer noch nicht, aber deinstallieren und installieren Sie die Pakete erneut von Nuget löste das Problem.
lostatredrock
0

Sie sollten nur den Ordner ".vs" in Ihrem Projekt entfernen. (Der Ordner .vs ist ausgeblendet.)

Seien Sie vorsichtig ResetUserDataentfernen alle Anpassungen auf Visual Studio.

Fred
quelle
0

Das einzige, was für mich funktioniert hat, war, den "Ausgabepfad" des Projekts in bin\(früher bin\Debug) zu ändern :

  1. Klicken Sie mit der rechten Maustaste auf das Projekt.
  2. Klicken Sie auf Propertiesund navigieren Sie zuBuild ,
  3. Scrollen Sie zum letzten Abschnitt mit dem Titel "Ausgabe".
  4. Ändern Sie den Wert in das Textfeld Output path:zubin\
Monoblaine
quelle
0

Oben funktioniert nicht, aber ich habe es geschafft mit:

  • Deinstallation (von Windows-Programm und -Funktionen) Web Developer Toolsfür VS 2015, RC, Update 1
  • Installation (von VS Installer -> Ändern) Web Developer Tools(es ist eine andere Version von oben)

Das Problem war also, dass das VS-Installationsprogramm die Web Developer Tools nicht installiert hat und die bereits installierte, inkompatible Version als die richtige erkannt hat.

Krystian
quelle
0

Ich habe dieses Problem behoben, indem ich mein Projekt auf ASP .NET MVC Version 5 aktualisiert habe. Es waren jedoch weitere Manipulationen mit Konfigurationsdateien erforderlich. Hier fand ich die Schritt-für-Schritt-Anleitung:

  • Ändern Sie in global.asax: WebApiConfig.Register (GlobalConfiguration.Configuration); zu GlobalConfiguration.Configure (WebApiConfig.Register);
  • Stellen Sie sicher, dass alle von Ihren Projekten verwendeten Pakete mit MVC 5 und Web API 2 kompatibel sind
  • Entfernen Sie eines der folgenden installierten ASP.NET NuGet-Pakete:
    1. Microsoft.AspNet.WebPages.Administration
    2. Microsoft-Web-Helfer ( nicht mit Microsoft.AspNet.WebHelpers verwechseln! )
    3. Microsoft.AspNet.Mvc.FixedDisplayMode
  • Aktualisieren Sie alle ASP.NET NuGet-Pakete. In der Package Manager-Konsole können Sie den folgenden Befehl ausführen: Update-Package . Ohne Parameter wird jedes Paket aktualisiert.
  • Aktualisieren Sie die Konfigurationsdateien für Anwendung und Ansichten:
    1. Ändern Sie für alle Elemente mit dem Namensattribut "System.Web.Mvc" die Versionsnummer in eine neue (überprüfen Sie die Version der Assembly im Solution Explorer, sie muss gleich oder höher als "5.0.0.0" sein).
    2. Machen Sie dasselbe für alle Elemente mit den Namensattributen "System.Web.Helpers" und "System.Web.WebPages" .
    3. Überprüfen Sie die Bindungsumleitungen für Assemblys "System.Web.Helpers" , "System.Web.Mvc". und "System.Web.WebPages" in Konfigurationsdateien. "OldVersion" und "newVersion" müssen den oben vorgenommenen Änderungen entsprechen.
    4. Suchen Sie den appSettings Abschnitt und aktualisieren die Web - Seiten: Version von „2.0.0.0.0“ auf „3.0.0.0“
    5. Aktualisieren Sie alle Elemente, die "System.Web.WebPages.Razor" enthalten, von Version "2.0.0.0" auf Version "3.0.0.0". Wenn dieser Abschnitt enthält "System.Web.WebPages" , aktualisieren Sie diese Elemente von Version "2.0.0.0" auf Version "3.0.0.0".
    6. Wenn Sie das Microsoft-Web-Helpers- NuGet-Paket in einem vorherigen Schritt entfernt haben, installieren Sie Microsoft.AspNet.WebHelpers mit dem folgenden Befehl in der Package Manager-Konsole: Install-Package -Id Microsoft.AspNet.WebHelpers

Ich hoffe das wird helfen.

Глеб Иконников
quelle
0

Ein nicht-invasiver Ansatz besteht darin, Ihre web.config-Dateien in Views auf die richtigen Versionen zu überprüfen. Diese Web.config-Dateien befinden sich unter app / Area / AreaName / Views oder in den allgemeinen Ordnern app / Areas. Sie unterscheiden sich von der Projektdatei Web.config.

  • Stellen Sie sicher, dass jede Version in den Typassemblierungszeichenfolgen mit Ihrer installierten NuGet-Version übereinstimmt
  • Stellen Sie sicher, dass die Version in der FactoryType-Assembly-Zeichenfolge mit Ihrer installierten NuGet-Version übereinstimmt

Hier ist ein Beispiel für das Neueste zum Zeitpunkt des Schreibens dieses Kommentars:

<configSections>
 <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
 <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
 <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
 </sectionGroup>
 </configSections>
<system.web.webPages.razor>
 <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
gregsonian
quelle
0

Was für mich (VS 2015 Community) funktioniert hat, war die in dieser Antwort vorgeschlagene Option . Beim Ausführen von cmd.exe als Administrator habe ich Folgendes ausgeführt:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe /setup
HeyJude
quelle
0

Ich habe "Microsoft ASP.NET und Web Tools" und "Web Essentials" heruntergeladen und installiert und es hat bei mir funktioniert.

Anonimussssss
quelle