2015-05-18 4 views
117

Просмотров My Razor в VS2015 RC не показывают правильную окраску кода C#. Мой проект отлично работал в VS2013, но это не в 2015 году, и это не дает мне Intellisense для кода C#. Решение строится, и сайт работает нормально.Visual Studio 2015 не подсветка синтаксиса бритвой или Intellisense

Я попытался следующий без толка

  • отключить все визуальные расширения Студии
  • удаляющих мой .suo файл
  • удаления проекта и повторное добавление его в раствор

Как могу я исправить это?

Пример:

+3

Вы считаете, что ожидаете полной версии? Нынешняя модель по-прежнему выглядит довольно грубо и предназначена для предварительного просмотра для тех, кто нетерпелив. – walther

+0

Были ли установлены инструменты для повышения производительности? В моем случае они разбились много в vs ... Curretnly получил теперь выделить в vNext PRojects –

+0

Это все еще происходит в VS2015 Professional. Ни один из ответов в этой теме не устраняет проблему навсегда. Выделение синтаксиса остается сломанным. –

ответ

206

Я нашел в этой answer другой способ, чтобы исправить это без devenv.exe /ResetUserData

Просто удалите содержимое этого каталога с Visual Studio закрыт: %LocalAppData%\Microsoft\VisualStudio\<visual_studio_version_number>\ComponentModelCache

Чтобы найти номер версии Visual Studio вы работаете, пожалуйста, обратитесь к списку this. Обратите внимание, что важно только основное число, малая версия может и, вероятно, будет отличаться. В моем случае я установил Visual Studio 2017 Enterprise, поэтому я искал 15.xx и нашел 15.0_9a1c4a06 внутри папки AppData.

+7

Это сработало для меня. VS 2015 Enterprise Version 14.0.23107.0 D14REL – Toft

+0

Не работает VS2015 Professional. –

+4

Отлично. Работал для меня в сообществе VS 2015. – Ingmar

52

Я имел такую ​​же проблему, единственное исправление до сих пор является путем сброса всех пользовательских данных (C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe /ResetUserData).

ПРИМЕЧАНИЕ. Вы потеряете все настройки, например. быстрые клавиши и макеты окон, если вы это сделаете!

EDIT: Люди говорят, что это работает только для RC, а не RTM, поэтому сначала вы можете попробовать другие исправления.

+0

Хотя это, вероятно, не лучшее решение *, это сработало для меня! Благодаря! Мне интересно, было ли это связано с тем, что были установлены предыдущие версии CTP. – DLeh

+2

вы можете экспортировать привязки ключей до этого и восстановить их после этого. – Console

+0

Правильно ли это '>' в этой командной строке? Это сработало для меня, заменив это на обратную косую черту. Но это решение тогда работало и на меня! –

27

У меня была такая же проблема в VS 2015 RTM и был в состоянии исправить это просто загрузки Visual Studio в безопасном режиме:

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

затем закрытия и повторного открытия это нормально.

+0

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

+1

Это действительно работало для меня, но стоит попробовать. Вы не потеряете свои текущие настройки. – Nick

+0

пробовал много вещей, это сработало для меня – daniel

4

Это будет эффект, если ваш проект MVC4. См. Подробности here. Также обратите внимание, что это будет исправлено в предстоящем выпуске.
Как вы можете определить, является ли ваш проект MVC4? Откройте файл pack.config и выделите запись для Microsoft.AspNet.Mvc. Если указанная версия начинается с «4», это означает, что вы используете MVC 4.

+0

Это действительно проблема для меня и/resetuserdata не помогает :( – chrilith

+0

За дополнительной информацией: http://www.asp.net/mvc/overview/releases/how-to-upgrade- a-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and-web-api-2 –

+0

Это не имеет ничего общего с MVC4. Проекты с MVC5 и 6 по-прежнему страдают от этих проблем –

7

Инструменты> Параметры> Текстовый редактор> Все языки> Общие. Снимите флажок «Скрыть расширенные элементы». Нажмите «ОК».

Как-то я сделал это Intellisense, похоже, работал на меня. Затем я перезагружаю его и сохраняю функциональность. Я использую корпоративную версию Visual Studio 2015.

Я попытался ResetUserData, и это не сработало для меня.

+1

Ну, это сработало, тогда он вернулся, чтобы не работать – Shawn

+1

не работал для меня с C#. Тем не менее, я в текстовом редакторе> C# и отмечен/затем снят флажок «Скрыть расширенные элементы», а затем нажал ok, и intellisense снова заработал. – Todilo

+0

это тоже сработало для меня и было намного предпочтительнее сбросить мои Окружающая среда! –

5

Выполнение VS 2015 RTM. Ни/ResetUserData, ни/SafeMode не работали для меня. Кроме того, некоторые связанные с производительностью Power Tools 2015 жалуются на всплывающее окно «errors-in-ActivityLog.xml» при запуске VS.

Таким образом, если у вас есть подобные симптомы, вот как я установил его на моей машине:

  1. Launch "Start Experimental Инстанции Visual Studio 2015" и открыть свой проект. Если intellisense работает и синтаксис бритвы подсвечивается, у вас есть большие шансы, что следующее будет работать.
  2. Удалить «Производительность электроинструментов 2015» и закрыть Visual Studio.
  3. Перейти к %LOCALAPPDATA%\Microsoft\VisualStudio\ и удалить 14.0 папку.
  4. Запуск VS - он должен запускаться, как только он был установлен.

P.S. Фактически, мне потребовалось пару раз, чтобы заставить работать мой intellisense, потому что я отключил PowerTools первым, и он снова сломал VS при повторном подключении. Поэтому требуется полная переустановка. Может быть вызвано другим расширением в вашем случае.

+0

Работает для меня! Visual Studio 2015 Enterprise. – Timber

+0

Работает для меня без удаления «Производительность Power Tools 2015». Visual Studio 2015 Enterprise. – ShurikEv

3

У меня была аналогичная проблема, где не будет выделен какой-либо сценарий бритвой, IntelliSense не будет работать, и компилятор не распознает какие-либо ошибки (даже если я намеренно поставил синтаксических ошибок в!)

I на самом деле исправил проблему, перейдя в C:/Users/YourUserName/AppData/Local/Temp и удалив все из этого файла, как только я это сделал, и перезапустил VS, мои Razor Views начали работать!

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

6

Я установил Visual Studio Community Edition 2015 (после использования Visual Studio Community Edition 2013 в течение длительного времени) и столкнулся с той же проблемой. Я пробовал все вышеупомянутые решения, но ничего не помогло.

Наконец, близко Visual Studio и удалены следующие папки -

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

... и теперь работает !!!

+0

это сработало для меня (полная версия) VS 2015 Enterprise edition – hal9000

+0

Иногда это работает, а иногда и нет. Он исправил его для меня примерно на 5 минут, после чего он снова начал происходить. –

+0

Это исправлено, по крайней мере, сейчас. Он не может продолжать работать, но мы это увидим. Похоже на нечетную ошибку и что-то Microsoft должна исправить. Этот вопрос был в 2015 и 2017 годах. – Deathstalker

0

У меня была такая же проблема, и мне пришлось скачать и установить «Microsoft ASP.NET и веб-инструменты» и «Веб-Essentials». После этого подсветки синтаксиса и Razor intellisense снова начали работать.

+0

Не повлиял на меня. VS2015 Professional. –

+0

Я использую сообщество VS2015. Вы пробовали решение Geir Sagbergs? В прогоне CMD: «C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ devenv.exe"/ResetUserData – Ogglas

+2

Да. Я пробовал каждое решение в каждом потоке в StackOverflow. Ничего не сработало. Я даже переустановил VS и мою операционную систему. –

10

После обновления Visual Studio 2015 Update 1 У меня была такая же проблема. Я пробовал все ответы, но не работал для меня.

Исправление для меня предназначалось для программ и свойств> Издание сообщества Visual Studio> Изменить. Я нажал на модификацию.

В списке обязательно поставьте галочку на «Средства разработки веб-разработчиков Microsoft» в разделе «Windows и веб-разработка».

Он не был проверен в моем списке Howewer:/

enter image description here

+0

К сожалению, когда я попробовал это, галочка вернулась. : <Он отказался уйти. : <Все еще застрял в этой проблеме. : <Очень отметился в VS прямо сейчас. : <огромная раковина. – PHenry

+0

Взгляните здесь: http://stackoverflow.com/questions/33245041/visual-studio-thinks-microsoft-web-developer-tools-is-installed/37756993 Симптомы те же. Я решил эту проблему, установив .NET Core 1.0.0 –

0

В моей сети.конфиг у меня был:

<system.web.webPages.razor> 
     <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
     <pages pageBaseType="System.Web.Mvc.WebViewPage"> 
      <namespaces> 
      <add namespace="LinkApp.Models.Templates"/> 
      <add namespace="System.Web.Mvc" /> 
      <add namespace="System.Web.Mvc.Ajax" /> 
      <add namespace="System.Web.Mvc.Html" /> 
      <add namespace="System.Web.Optimization"/> 
      <add namespace="System.Web.Routing" /> 
      <add namespace="LinkApp" /> 
      </namespaces> 
     </pages> 
     </system.web.webPages.razor> 

Oddly enough, I moved my custom namespace to the bottom, and that fixed it, like this: 

<system.web.webPages.razor> 
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    <pages pageBaseType="System.Web.Mvc.WebViewPage"> 
     <namespaces> 
     <add namespace="System.Web.Mvc" /> 
     <add namespace="System.Web.Mvc.Ajax" /> 
     <add namespace="System.Web.Mvc.Html" /> 
     <add namespace="System.Web.Optimization"/> 
     <add namespace="System.Web.Routing" /> 
     <add namespace="LinkApp" /> 
     <add namespace="LinkApp.Models.Templates"/> 
     </namespaces> 
    </pages> 
    </system.web.webPages.razor> 
0

неустановленного и переустановил из следующих работал для меня:

Microsoft.AspNet.Mvc

Microsoft.AspNet.WebPages

Microsfot.AspNet.Razor

Я попробовал сбросить пользовательские данные, удалив темп и 14, а также изменив настройки параметров и ни один из них не работал. Я даже попытался восстановить и переустановить. Я использую VS 2015 Version 14.0.24720.00 Update 1

+0

. Это сработало и для меня, у меня был сайт MVC4, с которым я работал в VS2013 из-за отсутствия поддержки до обновления 1. После установки обновления 1 он все еще не был работая в 2015 году, но удалить и переустановить пакеты от Nuget решила проблема. – lostatredrock

0

Вы должны удалить только папку «.vs» в вашем проекте. (Папка .vs скрыт)

Будьте осторожны ResetUserData удалить все настройки на Visual Studio ,

2

Напоминание о том, что вы правильно использовали нижний регистр @model в верхней части окна, а не @Model (например, я допустил ошибку).

Нижняя регистр @model - это директива, которая сильно наводит вид на экземпляр класса, который следует за ним. В то время как заглавная Model является свойством представления, которое получает экземпляр модели.

0

Единственное, что работал для меня, чтобы изменить «Output Path» проекта к bin\ (Раньше bin\Debug):

  1. правой кнопкой мыши по проекту,
  2. Нажмите на Properties и перейти к Build,
  3. Выделите последний раздел под названием «Выход»,
  4. Измените значение в текстовом поле с надписью Output path: к bin\
0

Выше не работает, но мне удалось с:

  • Деинсталляция (из программы Windows, и особенности) Web Developer Tools для VS 2015, RC, обновление 1
  • Установка (с VS Installer -> Изменить) Web Developer Tools (это другая версия выше)

Таким образом, проблема в том, что VS инсталлятор не установить средства Web Developer распознающие уже установлена, несовместимую версию в качестве надлежащего один.

2

Некоторые взгляды работали отлично для меня, некоторые совсем не ...Единственное, что помогло мне:

  • Закрытие VS
  • Удаление C: \ Users \% имя пользователя% \ AppData \ Local \ Temp
  • Перезапуск VS
  • Проблема решена

Я также пробовал большинство других решений, но они не работали для меня.

0

Я исправил эту проблему, обновив свой проект до ASP.NET MVC версии 5. Но для этого потребовалось несколько дальнейших манипуляций с файлами конфигурации. Here я нашел шаг за шагом руководство:

  • в global.asax, изменение: WebApiConfig.Register (GlobalConfiguration.Configuration); до GlobalConfiguration.Configure (WebApiConfig.Register);
  • Убедитесь, что все пакеты, которые ваши проекты используют совместимы с MVC 5 и Web API 2
  • Удалить любой из следующих пакетов ASP.NET NuGet, которые установлены:
    1. Microsoft.AspNet.WebPages. Администрация
    2. Microsoft-Web-хелперов (не путать с Microsoft.AspNet.WebHelpers!)
    3. Microsoft.AspNet.Mvc.FixedDisplayMode
  • Обновите все пакеты ASP.NET NuGet. В консоли диспетчера пакетов вы можете запустить следующую команду: Update-Package. Без каких-либо параметров он обновит каждый пакет.
  • Обновление приложений и просмотров конфигурационных файлов:
    1. Для всех элементов с атрибутом имени «System.Web.Mvc», измените номер версии на новую (проверить версию сборки в обозревателе решений, его должен быть равен или выше, чем «5.0.0.0»)
    2. Сделайте то же самое для всех элементов с атрибутом имени «System.Web.Helpers» и „System.Web.WebPages“.
    3. Проверка переадресации переадресации для сборок «System.Web.Helpers», «System.Web.Mvc» и «System.Web.WebPages» в файлах конфигурации «oldVersion» и «newVersion» должны соответствовать изменениям, сделанным выше.
    4. Расположить AppSettings раздел и обновление веб-страниц: версия от «2.0.0.0.0» на «3.0.0.0»
    5. обновления всех элементов, которые содержат «System.Web.WebPages.Razor» от версии "2.0.0.0" до версии "3.0.0.0". Если этот раздел содержит «System.Web.WebPages», обновите эти элементы с версии «2.0.0.0» до версии «3.0.0.0”
    6. Если вы удалили Microsoft-Web-хелперы NuGet пакет в одном из предыдущих шагов, установить Microsoft.AspNet.WebHelpers с помощью следующей команды в Package Manager Console: Install-Package -id Microsoft. AspNet.WebHelpers

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

0

Неинвазивный подход заключается в проверке ваших файлов вида web.config для правильных версий. Эти файлы Web.config находятся в папке app/Area/AreaName/Views или общих папках приложений/представлений. Они отличаются от файла проекта Web.config.

  • Убедитесь, что каждая версия в сборке строк типа соответствует вашей NuGet установленной версии
  • Убедитесь, что номер версии в строке factoryType сборки соответствует вашей NuGet установленной версии

Вот пример для последнего на момент написания этого комментария:

<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" /> 
0

Что работал для меня (VS 2015 Community) был вариант, предложенный в this ответ. Запуск cmd.exe от имени администратора, я побежал следующее:

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

Я исправил проблему, в том числе файл в проекте/решения. Я бы упустил тот факт, что нет подсветки/intellisense, если он не включен.

Смежные вопросы