Я только что создал проект ASP.NET MVC 4 и использовал Visual Studio 2012 RC для создания представлений Controller и Razor для Index
и Create
Actions.
Когда я пришел для запуска приложения и просмотрел представление Create
, была показана следующая ошибка:
Сообщение об ошибке компилятора: CS0103: Имя "Сценарии" не существует в текущий контекст
Проблема заключается в следующем коде, который автоматически добавляется в нижнюю часть представления:
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
Почему скрипты не существуют?
Я посмотрел на базовый класс веб-страницы в Assembly System.Web.Mvc.dll, v4.0.0.0
Я вижу доступные вспомогательные свойства:
- Ajax
- Html
- Url
Но ничего не именуется "Сценарии".
Любые идеи?
EDIT:
Мой файл Web.config выглядит так (нетронутый от того, который создал Visual Studio):
<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.Routing" />
</namespaces>
</pages>
</system.web.webPages.razor>
РЕДАКТИРОВАТЬ № 2:
Люди ведут блог об использовании помощника @Scripts
:
Однако, только установив Visual Studio 2012 RC на новую установку Windows 8, я все еще не могу использовать @Scripts
, хотя Visual Studio добавляет его в сгенерированный View!
Решения представлены ниже.
Я не уверен, как закрыть это, потому что в конце концов обновление, похоже, решило проблему. Я дважды проверил, что выполнил чистую установку, используя новый проект. Но тот же неудачный проект, который я сделал, теперь отлично работает после различных обновлений и без ручного очевидного вмешательства. Спасибо за все мысли, но в то время определенно была проблема;)