Visual Studio 2015 Razor View MVC Типы не распознаются
Я установил Visual Studio 2015 и перезагрузил компьютер. Типы "MVC" не распознаются в 2015 году, но все еще распознаются в 2013 году. Это мой "Views" web.config:
<configuration>
<configSections>
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.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=4.0.0.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" />
</namespaces>
</pages>
</system.web.webPages.razor>
7 ответов
Мы полагаем, что это происходит, потому что вы в настоящее время используете MVC 4, а инструменты MVC 4 не включены в Visual Studio 2015. Включены только инструменты MVC 5 и MVC 6. Если вы действительно используете MVC 5 и видите эти проблемы, сообщите нам об этом. Вы можете подтвердить, что используете MVC 4, открыв package.config и выделив запись для Microsoft.AspNet.Mvc. Если указанная версия начинается с "4", это означает, что вы используете MVC 4.
Тем не менее, мы ценим ваши отзывы и инвестиции, которые вы сделали в MVC 4. Исходя из ваших и других отзывов клиентов, мы рассматриваем возможность сделать инструменты MVC 4 доступными для Visual Studio 2015. Тем временем ваш проект будет компилироваться и запускаться в Visual Studio 2015, несмотря на проблемы с инструментами. В качестве альтернативы, вы можете установить Visual Studio 2013 и 2015 на своей машине параллельно. Таким образом, вы можете использовать Visual Studio 2013 для проектов MVC 4 и Visual Studio 2015 для проектов MVC 5 и выше.
Это не сработало для меня. Кажется, что эта проблема имеет несколько основных причин, связанных с web.config.
Еще одной проблемой было несоответствие версии компиляции root web.config.
<compilation debug="true" targetFramework="4.5.2">
<httpRuntime executionTimeout="600" maxRequestLength="10240" requestValidationMode="2.0" targetFramework="4.5.2" />
Если версия httpruntime отличается от версии сборки, это может произойти.
Если вы обновились с MVC4 до MVC5: в Views/web.config измените
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
в
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
От Криса Чжао на asp.net: Вы можете рассмотреть вопрос об удалении VS 2015, переустановить его снова и проверить, выбраны ли "Инструменты веб-разработчика" [во время установки перейдите в "Пользовательский", чтобы убедиться, что он проверен.
Я сделал это, и он избавился от красных подчеркиваний под Viewbag.
Я думаю, что подобная проблема была описана /questions/15687682/mvc-razor-view-intellisense-sloman-v-vs-201320152017. Используется старая версия System.Web.Mvc (по мнению VS 2015).
Я пробовал много вещей, чтобы решить эту проблему. Назвать несколько:
- Проверка и снятие отметки Инструменты-> Текстовый редактор-> Все языки-> Члены автоматического списка и информация о параметрах
- Перезапуск Visual Studio
- Удаление всех видов файлов в разных папках:bin, *.sou, %AppLocacalData%\Temp и т. Д.
Ничего не сработало.
Затем я зашел в Панель управления, запустил установку Visual Studio и нажал кнопку "Восстановить". После завершения процесса он предложил перезагрузить компьютер, и после этого intellisense снова начал работать в режиме просмотра бритвы.
Я обнаружил, что мне нужно увеличить версию для сборок, имеющих дело с разделами конфигурации, до 3.0.0.0 в файле Views/Web.config:
<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>
Раньше были все 2.0.0.0.