Visual Studio 2015 Broken Razor Intellisense

Po zainstalowaniu, a następnie naprawieniu mojej instancji VS2015 nadal nie mogę uruchomić intellisense (po stronie serwera) w moich widokach MVC. Gdy tylko otworzę po raz pierwszy sesję an , otrzymuję powiadomienie za pomocą komunikatu.plik cshtml i zostanie zaadresowany do pliku Activitylog. Komunikat o błędzie pobrany w dzienniku aktywności.xml (wersja skrócona):

System.ArgumentException: pozycja została już dodana. Klucz w słownik: "RazorSupportedRuntimeVersion"

Oto pełna wersja:

System.Odbicie.TargetInvocationException: wyjątek został wyrzucony przez cel inwokacji. --- >System.ArgumentException: Item został już dodany. Klucz w słowniku: Dodano klucz "RazorSupportedRuntimeVersion" : "RazorSupportedRuntimeVersion" w System.Kolekcje.Hashtable.Insert(Object key, Object nvalue, Boolean add) w systemie.Kolekcje.Hashtable.Add (Obiekt klucz, wartość obiektu) w System.Kolekcje.Specjalistyczne.HybridDictionary.Add (klucz obiektowy, obiekt wartość) w Microsoft.VisualStudio.Narzędzia.PropertyCollection.AddProperty(Obiekt klucz, właściwość obiektu) w Microsoft.VisualStudio.Html.Paczka.Razor.RazorVersionDetector.Microsoft.Html.Redaktor.ContainedLanguage.Razor.Def.IRazorVersionDetector.GetVersion(ITextBuffer textBuffer) w Microsoft.Html.Redaktor.ContainedLanguage.Razor.Brzytwa.TryGetRazorVersion(ITextBuffer textBuffer, Wersja& razorVersion) w Microsoft.Html.Redaktor.ContainedLanguage.Razor.RazorErrorTagger..ctor(ITextBuffer textBuffer) - - - koniec wewnętrznego wyjątku stack trace - - - w System./ Align = "left" / InvokeMethod(obiekt docelowy, obiekt[] arguments, Signature sig, Boolean constructor) w System.Odbicie.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, parametry Object [], CultureInfo culture) system at.RuntimeType.CreateInstanceImpl (BindingFlags bindingAttr, Segregator segregator, Object [] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark) w System.Aktywator.CreateInstance (typ typ, BindingFlags bindingAttr, Binder binder, Object [] args, CultureInfo culture, Object[] activationAttributes) w systemie.Aktywator.CreateInstance (Typ, Object [] args) w Microsoft.Html.Redaktor.ContainedLanguage.Pospolite.ContainedCodeErrorTaggerProvider " 1.CreateTagger [T] (ITextBuffer textBuffer) w Microsoft.VisualStudio.Tekst.Tagowanie.Wdrożenie.TagAggregator " 1.GatherTaggers(ITextBuffer textBuffer)

Jeśli to pomoże, mam kilka dostosowań do kolorowania czcionek i mam zainstalowane rozszerzenia Web Essentials, Bundler & Minifier i Web Compiler.

UPDATE : dzieje się tak, gdy otwieram istniejącą aplikację internetową lub gdy tworzę zupełnie nową od zera. Istnieje również instancja VS2013 zainstalowana i działająca na tym samym maszyna.

Brak intellisense w ogóle

Jak widać z powyższego zdjęcia nie dostaję w ogóle intellisense, ani żadnego kolorowania kodu.

Jakieś wskazówki jak to naprawić? Z góry dzięki.

Author: Matt, 2015-07-23

17 answers

Rozwiązałem ten problem resetując dane użytkownika

devenv.exe /resetuserdata

I usunąć ".vs " folder w moim projekcie.


Ostrzeżenie: spowoduje to zresetowanie wszystkich ustawień użytkownika. Zasadniczo jest to jak zresetowanie do ustawień fabrycznych. Utracisz wszelkie niestandardowe skróty klawiaturowe, zainstalowane rozszerzenia itp.

 127
Author: Yanos,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-01-25 15:44:27

To powtarzało się również dla mnie i wydaje się być związane z aktualizacjami rozszerzeń, ale nie byłem jeszcze w stanie winić niczego konkretnego. To, co udało mi się odkryć, jest mniej natrętne.

W moim przypadku usunięcie zawartości tego katalogu pozwala na odzyskanie IDE:

%LocalAppData%\Microsoft\VisualStudio\14.0\ComponentModelCache

Edit: właśnie natknąłem się na ten, który też może być przydatny - Wyczyść pamięć podręczną komponentu MEF (otwórz galerię VSIX)

 161
Author: brahnp,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-28 18:46:41

FWIW, miałem ten problem z VS 2015 Enterprise na dwóch różnych maszynach. Na jednym komputerze zresetowanie danych użytkownika sprawiło, że problem zniknął (na chwilę). Na drugiej maszynie musiałem całkowicie odinstalować i ponownie zainstalować VS, a problem zniknął na chwilę. Na obu komputerach problem powrócił po zainstalowaniu rozszerzenia (raz przy instalacji Web Essentials, raz przy instalacji Git Diff Margin).

Spaliłem sprawę pomocy technicznej MSDN, a odpowiedź brzmiała... Tak, to bug, MS wie o tym i pracują nad tym.

Nie jest to szczególnie przydatna odpowiedź, ale mimo to odpowiedź...

EDIT: a co do tematu obejścia problemu, spotkałem się z tym problemem kilka razy, odkąd zamieściłem tę "odpowiedź". Ostatnio zainstalowałem aktualizację do NuGet Package Manager, a po ponownym uruchomieniu VS zaczął mieć ten problem. Uciekłem devenv.exe /resetuserdata, ale to nie pomogło, nadal było zepsute. Więc spróbowałem jeszcze raz (ran devenv.exe /resetuserdata) i, bada Bing bada boom, problem zniknął (na razie). Morał wydaje się być czymś w rodzaju " jeśli na początku nie uda ci się..."

 11
Author: Bob.at.Indigo.Health,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-18 18:23:15

Mogło się zdarzyć, że ktoś będzie miał Resharper.
Zostanie naprawiony w przyszłych wersjach, ale od teraz (wersja 10.0.2) jest zepsuty. Resharper nadpisuje intellisense Visual Studio i dlatego nie będzie działać. Co wyjaśnia również, dlaczego uruchomienie devenv.exe /ResetUserData naprawia go, ponieważ usuwa Resharper.

Ręcznie zwraca moc intellisense do VS poprzez menu:
ReSharper >> Enviroment >> IntelliSense >> wypełnij następujące:
Tutaj wpisz opis obrazka

I tak intellisense Z VS powinno wyglądać:
Tutaj wpisz opis obrazka

 7
Author: NucS,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-21 18:18:56

Spotkałem się z tym samym problemem, ale przyczyna była inna od pozostałych odpowiedzi.

Aktualizacja Visual Studio, podejrzewam, że TypeScript update z września 2015, odinstalowała komponent Web Developer Tools Visual Studio 2015. To powoduje, że Intellisense nie działa.

Zainstalowałem Web Developer Tools w opcjach instalatora ponownie i usunąłem ComponentModelCache po instalacji. To mi pomogło.

 6
Author: Wakusei,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-30 10:21:50

To naprawiło mi to od razu.

W Visual Studio:

Kliknij Narzędzia- > Opcje - > Edytor Tekstu - > Wszystkie Języki- > Ogólne Odznacz " członkowie listy Auto" Odznacz " informacje o parametrach" Zaznacz opcję "Automatyczna lista członków" (tak ,ta, którą właśnie odznaczyłeś) Sprawdź "informacje o parametrach "(ponownie, ten, który właśnie odznaczyłeś) Kliknij OK

 4
Author: Craig Goldensoph,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-23 21:43:22

Aby dodać moje 2 centy. Żadne z poprzednich rozwiązań nie działało dla mnie, wtedy znalazłem ten link:

Http://www.c-sharpcorner.com/blogs/how-to-resolve-intellisense-issue-in-visual-studio1

W szczególności ten

Rozwiązanie 4:

Następnie zresetuj ustawienia z następującej lokalizacji.

Narzędzia - > Ustawienia importu i eksportu - > Zresetuj wszystkie ustawienia.

Stamtąd wybieram Visual C#

 4
Author: Alexander D,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-24 11:35:55

/ResetUserData rozwiązanie jest najlepszym rozwiązaniem, ale myślę, że znalazłem możliwą przyczynę tego...

Obecnie używam Umbraco do tworzenia makr częściowych w BackOffice. Po utworzeniu tych plików klikam na przycisk Ukryj / Pokaż wszystkie pliki, aby pokazać Makro częściowe w moim rozwiązaniu i podświetlanie składni Razor wydaje się przestać działać, więc moim zdaniem nowe pliki wprowadzone do rozwiązania, które nie są tworzone bezpośrednio przez VS powodować ten problem.

Nawet przy dodawaniu pliki do rozwiązania podświetlanie składni nie działa.

 1
Author: ChronixPsyc,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-08-26 14:01:23

Czasami, VS Ide nie pokazuje Intellisense w ogóle. Po prostu zamykam rozwiązanie. Zamknij VS. następnie ponownie go otworzyć i problem jest rozwiązany.

 1
Author: Thomas.Benz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-11-11 16:29:33

Istnieje inne rozwiązanie, bez resetowania wszystkich danych użytkownika

(ale tylko układy okien/Paski narzędzi):

Zamknij wszystkie instancje VS2015, [ostatecznie kopia zapasowa i] usuń folder:

"[User Directory]\AppData\Roaming\Microsoft\Visual Studio\14.0"

Teraz ponownie otwórz VS2015: layout został zresetowany do ustawień fabrycznych, ale składnia Razor działała

 1
Author: T-moty,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-01-20 16:26:10

FYI: moja instalacja VS 2015 PRO ma pełną instalację ze wszystkimi stronami 3-rd.

Próbowałem wszystkich możliwych rozwiązań, które tutaj w artykule, nie pomogło mi. To, co napisał Craig Goldensoph, pomogło mi częściowo znaleźć rozwiązanie dla mnie.

Więc najpierw zrobiłem: Odznacz wszystkie pola wyboru dla edytora tekstu - > wszystkie języki-> ogólne wypełnianie instrukcji: Tutaj wpisz opis obrazka

Po kliknięciu OK-ponownie otwórz okno dialogowe opcji: i sprawdź wszystkie dla tej samej sekcji: Tutaj wpisz opis obrazka

I zastosuj Ustawienia ponownie. Musisz ponownie uruchomić Visual studio. Po ponownym uruchomieniu ładowanie zajmie trochę czasu, ale po tym zadziałało dla mnie.

 1
Author: Eugene Bosikov,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-23 20:06:28

Jeśli żadna z pozostałych opcji nie działa, istnieje obejście. Po wejściu do".'operator naciska klawisze " Ctrl + Spacja", które powinny wymusić wyświetlenie okna dialogowego Intellisense.

Miałem ten problem podczas pracy z .pliki CSHTML MVC.

 1
Author: Versatile,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-12-05 21:49:18

To może zabrzmieć śmiesznie, ale żeby zrobić jedną rzecz..

Umieść Breakpoint na dowolnej linii, a następnie odczekaj 5 sekund, które nie działają wtedy przejdź do pierwszej linii i umieść tam punkt przerwania, a gdy umieścisz punkt przerwania, poprosi o ustawienia punktu przerwania. Tutaj wpisz opis obrazka kliknij te ustawienia i zamknij te ustawienia. Załatwione. ty intellisense teraz działa.

Mam vs 2015 Community edition.Wcześniej miał vs 2015 Enterprise i stało się na tym, ale po uzyskaniu społeczności znalazłem to samo się dzieje i to samo rozwiązanie działa dla obu.

Znalazłem to rozwiązanie przypadkowo podczas pracy.Zrób to również, gdy projekt nie działa.możesz również usunąć ten punkt przerwania.

 0
Author: Jay,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-02 10:23:58

Nie musisz resetować wszystkiego po prostu usuń wszystkie pliki z {[0] } i uruchom ponownie VS, będzie dobrze.

 0
Author: Nilesh Moradiya,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-05 10:02:50

Zamieściłem tę odpowiedź na inne pytanie SO, tylko dlatego, że chcę zapobiec marnowaniu czasu, który właśnie zmarnowałem. Mój problem polegał na tym, że dodałem pliki do projektu, ale nie uwzględniłem ich. Postanowiłem więc pokazać wszystkie pliki:

Tutaj wpisz opis obrazka

Następnie wybierz dołączenie folderów:

Tutaj wpisz opis obrazka

Problem pojawia się tylko wtedy, gdy otwierasz stronę MVC jako projekt, a nie gdy otwierasz ją bezpośrednio jako stronę internetową.

 0
Author: Andy Brown,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-06 15:05:21

Udało mi się to naprawić tylko poprzez aktualizację wersji stron internetowych, o czym wspomniałem w innym podobnym pytaniu:

Razor intellisense nie działa w VS 2015

 0
Author: Tony Anderson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 11:47:08

Mój był lekkim bólem w keester, ale wydawał się działać. W moim przypadku był toplik aspx, który nie zrobiłby już intellisense (po tym jak głupio zmieniłemnazwa pliku aspx...nauczka!)

  1. skopiowałem cały mój kod z plików (.aspx & cs) do notatnika np.
  2. usunięto .plik aspx (który z kolei usunął wszystkie pliki potomne).
  3. Uratowałem mój projekt. Stworzył nowy .plik aspx o tej samej nazwie.
  4. skopiuj / wklej mój kod z notatnika.
  5. zapisałem.
  6. Spróbowałem ponownie intellisense. Zadziałało!

Round about way, ale nie tak źle, jak odinstalowanie / vs ponowna instalacja, która jest totalna przesada. Powodzenia wszystkim! Mam nadzieję, że MS kiedyś to naprawi!

 0
Author: John Waclawski,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-12-19 01:25:52