2016-05-11 6 views
6

Wenn Sie Code in Razor schreiben, funktioniert die Dropdown-Box für Intellisense nicht richtig. Es öffnet sich und schließt sich dann weniger als eine Sekunde später.MVC/Razor - Intellisense Pop-Up schließt, wenn eine folgende Klammer vorhanden ist

Dies passiert mir nicht, wenn ich eine Klasse oder etwas in diesem Sinne schreibe, es ist nur vorhanden, wenn ich an einer Ansicht arbeite.

Um zu erklären, was, wie ich

  • @Html geben passiert.
    1. Die Intellisense-Box wird geöffnet und bleibt geöffnet.
  • @ Html.DisplayFor (p => M) // der schließenden Klammer automatisch von VS geschrieben
    1. Die Box öffnet sich an möglichen Eingaben zeigt, die mit M zu beginnen, sondern sofort schließt.
  • @ Html.DisplayFor (p => Modell.)
    1. Die Box öffnet und zeigt die Eigenschaften mit dem Modell verbunden sind, aber dann schließt sofort.

Wenn jedoch füge ich einen Raum:

  • @ Html.DisplayFor (p => M)
    1. Die Box geöffnet bleibt.
  • @ Html.DisplayFor (p => Modell.)
    1. Die Box bleibt offen.

Gibt es eine Einstellung oder etwas, das mir dies tut?

Dieses Problem besteht weiterhin durch das Schließen und erneutes Öffnen von VS sowie das erneute Erstellen des Projekts.

Verwenden von Visual Studio 2015 Professional 2015 Update 2 Arbeiten mit Razor während MVC. Ich habe auch Web Essentials installiert, wenn es eine Einstellung dafür gibt.

+0

Was passiert, wenn Sie das Popup mit Ctrl-Space auslösen? Es ist möglich, dass VS nur den Code parst und erkennt, dass der ursprüngliche Popup-Inhalt ungültig ist. Manchmal kann teilweise geschriebener fehlerhafter Code dazu führen, dass die gesamte Datei nicht mehr abfragbar ist, was bedeutet, dass alle Informationen darüber, welche Elemente verfügbar sind, verloren gehen. JetBrains Resharper macht viel besser Parsing und automatische Vervollständigung. – Charlie

+0

@Charlie Strg + Leerzeichen öffnet das Popup korrekt und es bleibt offen. Wie würde ich "teilweise geschriebenen schlechten Code" aufspüren? – hcaelxxam

+0

Teilweise geschriebener schlechter Code ist sehr Situation. Das beste Beispiel ist, wenn Sie eine if-Anweisung starten und die geschweifte Klammer öffnen (vielleicht aus einer Paste), aber die schließende Klammer nicht bereitstellen. Der Parser kann das Ende der Klasse nicht finden, also gibt es einfach auf, bis Sie alle geschweiften Klammern erreichen. Sie haben vielleicht eine andere Option oder ein anderes Plugin, das den Fokus stehlen kann und dazu führt, dass das Popup verschwindet. Dies wäre sehr schwer zu finden. Sie könnten versuchen, alle Ihre Plugins zu deaktivieren, Ihre Einstellungen auf die Standardeinstellungen zurückzusetzen usw. und zu sehen, ob es nicht mehr funktioniert. Neustart des Computers funktioniert möglicherweise auch. – Charlie

Antwort

0

In meinem speziellen Fall konnte ich das Problem lösen, indem ich die neueste Version von Microsoft ASP.NET und Web Tools installierte.

https://marketplace.visualstudio.com/items?itemName=JacquesEloff.MicrosoftASPNETandWebTools-9689

Einmal habe ich es installiert ist, war das Problem verschwunden. Es ist wahrscheinlich, dass dieses Update etwas reparierte, das mit einer älteren Version behoben werden konnte, aber so oder so bin ich glücklich.

(Ich fand dies in Visual Studio unter Extras-> Erweiterungen und Updates ...-> Updates-> Visual Studio Gallery)

0

Ich habe sehr gleiches lästiges Problem manchmal (VS2015), ich weiß es nicht Sinn und Verstand nur ein Beispiel: Am Anfang der cshtml Datei, die ich hatte ...

@{ 
    Style. 
} 

Als ich das "." Nach dem Style zeigte das Intellisense für Sekundenbruchteile und verschwand dann.

Ich weiß, das ist dumm, aber wenn ich einen Return-Key hinzugefügt, um Zeilenabstand hinzuzufügen - dann bekomme ich wieder intellisense richtig funktioniert.?

@{ 
    Style. 

} 

Ich weiß, es ist keine Lösung, aber diese Arbeit bringt mich schnell wieder auf die Beine.

Löschen aller Leerzeichen nach Style. bis}} so sieht es aus wie Style.} hat auch für mich funktioniert, so dass es einige Sonderzeichen geben kann, die Probleme verursachen.

Verwandte Themen