Po zainstalowaniu, a następnie naprawieniu mojej instancji VS2015 nadal nie mogę uruchomić funkcji Intellisense (po stronie serwera) w moich widokach MVC. Kiedy otwieram po raz pierwszy w sesji plik .cshtml i jestem adresowany do pliku Activitylog, pojawia się komunikat o błędzie . Komunikat o błędzie pobrany z ActivityLog.xml (wersja skrócona):
System.ArgumentException: element został już dodany. Klucz w słowniku: „RazorSupportedRuntimeVersion”
Oto pełna wersja:
System.Reflection.TargetInvocationException: Wyjątek został zgłoszony przez cel wywołania. ---> System.ArgumentException: pozycja została już dodana. Klucz w słowniku: „RazorSupportedRuntimeVersion”Dodawany klucz: „RazorSupportedRuntimeVersion” w System.Collections.Hashtable.Insert (Object key, Object nvalue, Boolean add) at System.Collections.Hashtable.Add (Object key, Object value) at System.Collections.Specialized.HybridDictionary.Add (Klucz obiektu, wartość obiektu) w Microsoft.VisualStudio.Utilities.PropertyCollection.AddProperty (klucz obiektu, właściwość obiektu) w Microsoft.VisualStudio.Html.Package.Razor.RazorVersionDetector.Microsoft.Html.Editor.ContainedLanguage.RazorV.Defet.IR .GetVersion (ITextBuffer textBuffer) w Microsoft.Html.Editor.ContainedLanguage.Razor.RazorUtility.TryGetRazorVersion (ITextBuffer textBuffer, Version & razorVersion) w Microsoft.Html.Editor.ContainedLanguage.RazctorTextRazorBuffer --- wewnętrznego śledzenia stosu wyjątków --- w System.RuntimeMethodHandle.InvokeMethod (Object target, Object [] arguments, Signature sig, Boolean constructor) at System.Reflection.RuntimeConstructorInfo.Invoke (BindingFlags invokeAttr, Binder binder, Object [] parametry, CultureInfo culture) w System.RuntimeType.CreateInstinding , Binder binder, Object [] args, CultureInfo culture, Object [] aktywacjaAttributes, StackCrawlMark & stackMark) w System.Activator.CreateInstance (Type type, BindingFlags bindingAttr, Binder binder, Object [] args, CultureInfo culture, Object [] aktywacjaAttributes) w System.Activator.CreateInstance (Type type, Object [] args) w Microsoft.Html.Editor.ContainedLanguage.Common.ContainedCodeErrorTaggerProvider'1.CreateTagger [T] (ITextBuffer textBuffer) w Microsoft.VisualStudio.Text.Tagregator.Implementacja1.GatherTaggers (ITextBuffer textBuffer)
Jeśli to jakakolwiek pomoc, mam kilka dostosowań kolorowania czcionek i mam zainstalowane rozszerzenia Web Essentials, Bundler & Minifier i Web Compiler.
AKTUALIZACJA : dzieje się tak, gdy otwieram istniejącą aplikację internetową lub tworzę zupełnie nową od podstaw. Istnieje również instancja VS2013 zainstalowana i uruchomiona na tym samym komputerze.
Jak widać na powyższym zdjęciu, nie dostaję w ogóle inteligencji ani żadnego kolorowania kodu.
Masz jakąś wskazówkę, jak to naprawić? Z góry dziękuję.
źródło
Odpowiedzi:
Rozwiązałem ten problem, resetując dane użytkownika
i usuń folder „.vs” w moim projekcie.
OSTRZEŻENIE: spowoduje to zresetowanie wszystkich ustawień użytkownika. Zasadniczo przypomina to przywracanie ustawień fabrycznych. Utracisz wszelkie niestandardowe skróty klawiaturowe, zainstalowane rozszerzenia itp.
źródło
devenv.exe /resetuserdata
nie rozwiązałem problemu! FYI: Nie otrzymuję żadnych błędów, ale VS nie maluje składni dla widoków Razor.devenv.exe /resetuserdata
.To się też powtarza i wydaje się być powiązane z aktualizacjami rozszerzeń, ale nie byłem jeszcze w stanie winić niczego konkretnego. To, co udało mi się odkryć, to mniej inwazyjne rozwiązanie.
W moim przypadku usunięcie zawartości tego katalogu umożliwia IDE odzyskanie:
%LocalAppData%\Microsoft\VisualStudio\14.0\ComponentModelCache
Edycja: właśnie natknąłem się na ten, który może być również przydatny - Wyczyść pamięć podręczną składników MEF (Otwórz galerię VSIX)
źródło
FWIW, miałem ten problem z VS 2015 Enterprise na dwóch różnych komputerach. Na jednym komputerze zresetowanie danych użytkownika spowodowało, że problem zniknął (na chwilę). Na drugim komputerze musiałem całkowicie odinstalować i ponownie zainstalować VS, a problem na chwilę zniknął. Na obu komputerach problem powrócił po zainstalowaniu rozszerzenia (raz podczas instalacji Web Essentials, raz podczas instalacji Git Diff Margin).
Spaliłem zgłoszenie do pomocy technicznej MSDN, a odpowiedź brzmiała ... Tak, to błąd, MS wie o tym i pracują nad tym.
Nie jest to szczególnie przydatna odpowiedź, ale mimo to odpowiedź ...
EDYCJA: A jeśli chodzi o obejście problemu, napotkałem ten problem kilka razy, odkąd opublikowałem tę „odpowiedź”. Ostatnio zainstalowałem aktualizację Menedżera pakietów NuGet, a po ponownym uruchomieniu programu VS zaczął mieć ten problem. Pobiegłem
devenv.exe /resetuserdata
, ale to nie pomogło; nadal był zepsuty. Więc spróbowałem ponownie (pobiegłemdevenv.exe /resetuserdata
) i, bada bing bada boom, problem zniknął (na razie). Morał wydaje się być czymś w rodzaju „jeśli na początku nie odniesiesz sukcesu ...”źródło
Mógł się zdarzyć duet
Resharper
.Zostanie to naprawione w przyszłych wersjach, ale na razie (wersja 10.0.2) jest zepsute. Resharper zastępuje intelisense programu Visual Studio i dlatego nie będzie działać. Co wyjaśnia również, dlaczego uruchomienie
devenv.exe /ResetUserData
go naprawia, skoro usuwaResharper
.Ręcznie przywróć moc Intellisense do VS za pośrednictwem menu:
ReSharper
>>Enviroment
>>IntelliSense
>> Wypełnij następujące elementy:A tak powinien wyglądać Intellisense z VS:
źródło
Spotkałem ten sam problem, ale przyczyna była inna niż w przypadku innych odpowiedzi.
Aktualizacja Visual Studio, podejrzewam, że aktualizacja TypeScript we wrześniu 2015 roku, odinstalowała komponent Web Developer Tools w Visual Studio 2015. To powoduje, że Intellisense nie działa.
Ponownie zainstalowałem Web Developer Tools w opcjach instalatora ORAZ usunąłem ComponentModelCache po instalacji. To zadziałało dla mnie.
źródło
To naprawiło to dla mnie od razu.
W programie Visual Studio:
Kliknij Narzędzia-> Opcje-> Edytor tekstu-> Wszystkie języki-> Ogólne Odznacz "Auto lista członków" Odznacz "Informacje o parametrach" Zaznacz "Auto listy członków" (tak, ten, który właśnie odznaczyłeś) Zaznacz "Informacje o parametrach" (ponownie, ten, który właśnie odznaczyłeś) Kliknij OK
źródło
Aby dodać moje 2 centy. Żadne z poprzednich rozwiązań nie działało u 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
Stamtąd wybieram Visual C #
źródło
/ResetUserData
Rozwiązanie jest najlepszy, ale też myślę, że okazało się, możliwą przyczyną tego ...Obecnie używam Umbraco do tworzenia makr częściowych w BackOffice. Po utworzeniu tych plików klikam przycisk Ukryj / Pokaż wszystkie pliki, aby wyświetlić Makro Częściowe w moim rozwiązaniu, a Podświetlanie składni Razor wydaje się przestać działać, więc przypuszczam, że są nowe pliki wprowadzone do twojego rozwiązania, które nie zostały utworzone bezpośrednio przez VS spowodować ten problem.
Nawet podczas dodawania plików do rozwiązania Podświetlanie składni nie działa.
źródło
Czasami VS Ide w ogóle nie pokazuje Intellisense. Po prostu zamykam rozwiązanie. Zamknij VS. Następnie otwórz go ponownie, a problem zostanie rozwiązany.
źródło
Jest inne rozwiązanie, bez resetowania wszystkich danych użytkownika
(ale tylko układy okien / paski narzędzi):
zamknij wszystkie instancje VS2015, [ewentualnie wykonaj kopię zapasową i] usuń folder:
Teraz ponownie otwórz VS2015: układ został zresetowany do ustawień fabrycznych, ale składnia Razor będzie działać
źródło
FYI: Moja instalacja VS 2015 PRO ma pełną instalację ze wszystkimi stronami trzecimi.
Wypróbowałem wszystkie możliwe rozwiązania, które tutaj w artykule mi nie pomogły. To, co napisał Craig Goldensoph, pomogło mi częściowo w znalezieniu dla mnie rozwiązania.
Więc najpierw zrobiłem: odznacz wszystkie pola wyboru dla Edytora tekstu-> Wszystkie języki-> Uzupełnianie instrukcji ogólnej:
Po kliknięciu OK - ponownie otwórz okno dialogowe opcji: I sprawdź wszystkie dla tej samej sekcji:
i ponownie zastosuj ustawienia. Musisz ponownie uruchomić swoje studio Visual. Po ponownym uruchomieniu ładowanie zajmie trochę czasu, ale potem zadziałało.
źródło
Jeśli żadna z pozostałych opcji nie działa, istnieje obejście. Po wpisaniu „.” Operator naciśnij klawisze „Ctrl + Spacja”, co powinno wymusić wyświetlenie okna dialogowego Intellisense.
Miałem ten problem podczas pracy z plikami Razor .cshtml MVC.
źródło
Może to zabrzmieć zabawnie, ale wystarczy zrobić jedną rzecz ...
Umieść punkt przerwania na dowolnej linii, a następnie odczekaj 5 sekund, co nie zadziała, a następnie przejdź do pierwszej linii i umieść punkt przerwania w tym miejscu, a gdy wstawisz punkt przerwania, zapyta o ustawienia punktu przerwania. kliknij te ustawienia i zamknij te ustawienia. Gotowe. Twój Intellisense teraz działa.
Mam VS 2015 Community Edition. Wcześniej miałem VS 2015 Enterprise i tak się stało, ale po uzyskaniu społeczności okazało się, że to samo dzieje się 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 jest uruchomiony, a także możesz usunąć ten punkt przerwania.
źródło
Nie musisz resetować wszystkiego, po prostu usuń wszystkie pliki z
%LocalAppData%\Microsoft\VisualStudio\14.0\ComponentModelCache
i uruchom ponownie VS, wszystko będzie dobrze.źródło
Opublikowałem tę odpowiedź na inne pytanie SO, tylko dlatego, że chcę, aby ludzie nie marnowali czasu, który właśnie zmarnowałem. Mój problem polegał na tym, że dodałem pliki do projektu, ale ich nie uwzględniłem. Więc zdecydowałem się pokazać wszystkie pliki:
następnie wybierz dołączenie folderów:
Problem pojawia się tylko wtedy, gdy otwierasz witrynę MVC jako projekt, a nie, gdy otwierasz ją bezpośrednio jako witrynę internetową.
źródło
Udało mi się to naprawić tylko poprzez aktualizację wersji stron internetowych, o której wspomniałem w innym podobnym pytaniu:
Inteligencja Razor nie działa w VS 2015
źródło
Mój był lekki ból w gorączce, ale wydawało się, że działa. W moim przypadku był to plik .aspx, który już nie robiłby funkcji Intellisense (po tym, jak głupio zmieniłem nazwę pliku .aspx ... lekcja wyciągnięta!)
W kółko, ale nie tak źle, jak odinstalowanie / a ponowna instalacja, która jest CAŁKOWICIE przesadzona. Powodzenia wszystkim! Miejmy nadzieję, że stwardnienie rozsiane naprawi to przez jeden z tych lat!
źródło