Razor intellisense не работает в VS 2015

Когда я загружаю свои VS2013-проекты в 2015 году, все мои виды бритвы заполняются красными красноватыми подчеркиваниями.

@model, @Scripts @url, @Html.Partial, лямбда-выражения

Intellisense теперь довольно бесполезен, поскольку, похоже, отсутствует половина вариантов.

Решения, которые я видел, связаны с удалением папки .vs и devenv.exe/ResetUserData, однако это не работает для меня.

Я нахожусь на новой установке сообщества VS 2015, используя те же установочные файлы, что и мои коллеги. Ни у кого из них нет проблем с бритвой, и они работают над теми же проектами, что и я.

Любая идея, как это исправить?

Изменить... Дополнительная информация! Я удалил/переустановил VS 2015 Community, открыл свои проекты, и бритва сработала! Затем я нажал на уведомление, чтобы обновить NuGet. Установлено обновление NuGet, перезапущен VS, бритва перестала работать снова. Итак, обновление NuGet ломает бритву??

Каждый раз, когда я открываю файл бритвы, он говорит: "Исключено событие. Это может быть вызвано расширением. Вы можете получить дополнительную информацию, просмотрев файл" C:\Users\Jonathan\AppData\Roaming\Microsoft\VisualStudio\14,0\ActivityLog.xml. "

В журнале активности я получаю следующую ошибку

"System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ArgumentException: Item has already been added. Key in dictionary: 'RazorSupportedRuntimeVersion' Key being added: 'RazorSupportedRuntimeVersion' at 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(Object key, Object value) at Microsoft.VisualStudio.Utilities.PropertyCollection.AddProperty(Object key, Object property) at Microsoft.VisualStudio.Html.Package.Razor.RazorVersionDetector.Microsoft.Html.Editor.ContainedLanguage.Razor.Def.IRazorVersionDetector.GetVersion(ITextBuffer textBuffer) at Microsoft.Html.Editor.ContainedLanguage.Razor.RazorUtility.TryGetRazorVersion(ITextBuffer textBuffer, Version& razorVersion) at Microsoft.Html.Editor.ContainedLanguage.Razor.RazorErrorTagger..ctor(ITextBuffer textBuffer) --- End of inner exception stack trace --- at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark) at System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes) at System.Activator.CreateInstance(Type type, Object[] args) at Microsoft.Html.Editor.ContainedLanguage.Common.ContainedCodeErrorTaggerProvider`1.CreateTagger[T](ITextBuffer textBuffer) at Microsoft.VisualStudio.Text.Tagging.Implementation.TagAggregator`1.GatherTaggers(ITextBuffer textBuffer)"

Как это исправить?

Ответ 1

Вам не нужно reset всех конфигураций вашей Visual Studio с помощью devenv.exe /ResetUserData для обхода этого

Вместо этого попробуйте просто удалить содержимое этого каталога с закрытой Visual Studio, а затем снова открыть его: %LocalAppData%\Microsoft\VisualStudio\14.0\ComponentModelCache

Ответ 2

Здесь, что НАКОНЕЦАЛО работает для меня: Пуск → Выполнить → (или Windows Key + R) Затем введите "devenv.exe/resetuserdata" (без кавычек, конечно)

Мне не нужно было удалять файл .vs, как это было у некоторых других.

Смотрите также: Visual Studio 2015 Broken Razor Intellisense

Ответ 3

Была та же проблема. ResetUserData не работает и т.д. Что сделала ResetUserData, хотя было reset некоторые из диалогов, которые были подавлены. В итоге появилось диалоговое окно, в котором говорилось: "The CompatiblityCheckerPackage" загрузился неправильно ". Он сказал мне перейти в папку моих пользователей (путь ниже) и проверить ActivityLog.xml. Оказывается, WebEssentials 2015 не устанавливался правильно и не загружался. Я снова установил WebEssentials, и ошибки Intellisense исчезли.

Полный путь для меня:

C:\Users\ххх\AppData\Roaming\Microsoft\VisualStudio\14,0\ActivityLog.xml

Надеюсь, что это поможет.

Ответ 4

Это может решить аналогичные проблемы (я получил его откуда-то, к сожалению, не могу вспомнить, на Github)

  • Закрыть VS Studio
  • Запустить командную строку как администратор
  • В командной строке:
    
    > cd "%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\Common7\IDE"
    > devenv /updateconfiguration
    > devenv /clearcache
    
    Я надеюсь, что это будет полезно кому-то.

Ответ 6

Удаление всего Solution и повторная загрузка его из Source Control - единственное, что сработало для меня. Возможно, вам придется открыть решение в VS 2013 прежде, чем вы сможете открыть его в 2015 году... очень сложная версия Visual Studio Microsoft!

Edit: Другое дело, что это странно, по крайней мере для меня... удаление красного зигзага подчеркнутым текстом, а затем повторное наложение на него проблемы! Возможно, это была случайная вещь, которая со мной произошла.

Ответ 7

У меня была такая же проблема, и ни один из этих ответов не работал. То, что я наконец увидел, было в моем представлении. Файл web.config ссылался на MVC 4, и мой основной файл web.config ссылался на MVC 5. Поэтому я мог компилировать, но intellisense не работал. MVC 4 не поддерживается в VS2015. Почему мои файлы web.config были разными, я не знаю. Когда я обновлял MVC в VS2012 месяца назад, он не должен обновлять этот файл конфигурации.

Ответ 8

Вы ничего не обновляете.
Просто удалите кеш компонентов из этой папки C:\Users\ххх\AppData\Local\Microsoft\VisualStudio\14,0\ComponentModelCache И ot будет работать нормально. Попробуйте

Ответ 9

Ни одно из этих решений не исправило это для меня. Что работало, так это то, что моя версия веб-страниц была актуальной. Итак,

<add key="webpages:Version" value="3.0.0.0" />

в web.config вместо версии 2.0.0.0

И затем закрытие и повторное открытие визуальной студии с тем же решением.

Ответ 10

Я использую VS 2015 профессионала. Столкнувшись с той же проблемой, попробовали все вышеупомянутые решения, и ничего не получилось. Ни "devenv.exe/ResetUserData", ни "удаление содержимого ComponentModelCache".

Единственный способ решить проблему - изменить установку: Перейти к программе и функциям → Найти Microsoft Visual Studio... 2015 → Нажмите "Изменить" → "Выбрать изменение" → "Проверить инструменты веб-разработчика Microsoft" → Нажмите "Обновить"

Это сработало для меня.

Ответ 11

Я прочитал много решений, я потерял много времени, и когда я был уверен, что не разрешу проблему visual studio 2015 intellisense, eureka, кто-то дал правильное решение: четкие и четкие 2 строки кода, которые я запускаю в cmd (например, администратор):

  • C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE > devenv/updateco nfiguration
  • C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE > devenv/clearcac he

Запустите визуальную студию, возможно, попросите переустановить один инструмент, который был брошен. Хорошо, что вы делаете, но все же теперь ваш intellisense будет работать аганом. удачи и благодарности в Надире

Ответ 12

Просто сделайте одно и перейдите к:

Инструменты > Расширение и обновление > Обновление версии Visual Studio

Это займет некоторое время, но после этого отлично работает.

Ответ 13

Я знаю, что эта тема устарела, но я только что преодолел ту же проблему, и мое решение не связано ни с одним из перечисленных здесь.

Проблема заключается в том, что в моих свойствах проекта параметр " Выходной путь" (Строить- > Вывод) был папкой, отличной от "bin". После изменения его в bin\, повторного открытия Studio и восстановления моего проекта, все получилось!

Надеюсь, это может помочь кому-то.

Ответ 14

Просто поместите Точка прерывания на Первая строка

Страница. и удалите его через несколько секунд... это определенно сработает...