Я только что обновил проект mvc4 (используя vs2012) до mvc5. После того, как у меня появилось много проблем, связанных с зависимостями, я наконец нашел этот учебник и выпрямил все, чтобы он строился без проблем. Однако мне нужно intellisense для любого из представлений (файлы .cshtml): @using, @model, @html. *, @styles... ничего не работает. Я, должно быть, сломал ссылку на механизм просмотра бритвы, не имея возможности правильно их разобрать. Я дважды проверил web.configs и ничего не вижу. Есть идеи? Благодарю.
Нет Intellisense в представлениях, обновляющихся с ASP.NET MVC 4 до MVC 5
Ответ 1
Теперь ASP.NET и Web Tools 2013.1 для Visual Studio 2012 были выпущены и должны разрешить проблему Intellisense MVC5 с VS 2012.
Этот выпуск приносит массу больших улучшений и включает некоторые фантастические усовершенствования ASP.NET MVC 5, веб-API 2, строительные леса и Entity Framework для пользователей Visual Studio 2012 и Visual Studio 2012 Экспресс для Интернета.
Вы можете загрузить обновление: http://blogs.msdn.com/b/webdev/archive/2013/11/18/announcing-release-of-asp-net-and-web-tools-2013-1-for-visual-studio-2012.aspx
Ответ 2
Прошел через ту же агонию и работал без intellisense во взглядах около 3 недель. Тогда я наконец нашел его. Он начал работать, когда я переключил настройки веб-страниц на версию 3 в web.config.
Итак, в моем web.config это была версия 2.0.0.0, после того как я обновился до 3.0.0.0, он начал работать
<appSettings>
<add key="webpages:Version" value="3.0.0.0"/>
...
</appSettings>
Схватившись, это была твоя проблема и помогла, потому что я чувствую твою боль:)
-------------------------------------------- ------------
ОБНОВЛЕНИЕ:. Для тех, кто все еще ищет исправление для этих проблем в пост-MVC5-обновлении, это помогло мне: в ~/Views/web.config
, обновление с MVC 5.2.2.0 до 5.2. 3.0, используя Nuget, не обновлял эту строку:
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.2.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
Обновление 5.2.2.0
до 5.2.3.0
привело к оживлению Intellisense. Возможно, вам придется закрыть представление и снова открыть его, чтобы загрузить Intellisense.
Ответ 3
Я попробовал все это и другие вещи в моем случае, это решение изменило эту строку, которая находится в Views-WebConfig внутри
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
to
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
Ответ 4
Хотя приведенные выше ответы могут решить большинство из этих проблем, моя проблема, по-видимому, была вызвана установкой VS, которую я установил. См. Ответ, предоставленный Эмран Хусейном здесь: Visual Studio 2013 IntelliSense перестает работать для контроллеров ASP.NET MVC5
Его ответ был замечен для меня, хотя моя проблема была с intellisense только в моих Razor Views. Я отключил расширение и перезапустил VS2013, и intellisense снова работает без проблем. Как и Эмран, я не решаюсь обвинять производителя расширения (AzureXplorer от программного обеспечения ClumsyLeaf), потому что я думаю, что это может быть проблема VS?
Ответ 5
Ни один из предыдущих решений не работал у меня. Я использую VS 2012 и MVC 5. Это то, что я сделал, чтобы заставить его работать:
- Я установил Web Tools 2013, как описано в следующей ссылке: http://blogs.msdn.com/b/webdev/archive/2013/11/18/announcing-release-of-asp-net-and-web-tools-2013-1-for-visual-studio-2012.aspx
-
Я проверил /web.config и/Views/web.config и исправил некоторые проблемы с версией. В моем случае у меня MVC 5.2, поэтому было важно выполнить правильное ожидание MVC следующим образом:
Также важно отметить это:
<add key="webpages:Version" value="3.0.0.0" />
Ответ 6
В подсказке тега "@model" в самой верхней части моего файла просмотра бритвы указано, что autofac 3.4.0.0 не удалось найти. Все мои проекты использовали Autofac 3.1.5, поэтому я добавил перенаправление в web.config, чтобы быстро решить проблему:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.0.0" newVersion="3.1.5" />
</dependentAssembly>
...
Мой intellisense вернулся, и я отложил последнее исправление на задание с низким приоритетом: D