ASP.NET MVC 4プロジェクトを作成し、Visual Studio 2012 RCを使用してIndex
、Create
アクションとコントローラービューとRazorビューを作成しました。
アプリケーションを実行するようになり、Create
ビューを参照すると、次のエラーが表示されました。
コンパイラエラーメッセージ:CS0103: 'Scripts'という名前は現在のコンテキストに存在しません
問題は、ビューの下部に自動的に追加された次のコードです。
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
スクリプトが存在しないのはなぜですか?
Assembly System.Web.Mvc.dll、v4.0.0.0のベースWebページクラスを見ました
次のヘルパープロパティが利用可能です。
- アヤックス
- HTML
- URL
しかし、スクリプトという名前のものはありません。
何か案は?
編集:
私の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が生成したビューに追加しても、まだ使用できません!
解決策を以下に示します。
どうやらこれを閉じる方法がわかりません。結局、アップデートで問題が解決したようです。新しいプロジェクトを使用して、クリーンインストールを実行したことを再確認しました。しかし、私が作成した同じ失敗したプロジェクトは、さまざまな更新と手動の明らかな介入なしで今はうまくいきます。すべての考えに感謝しますが、確かに当時問題がありました;)
<system.web.webPages.razor> <pages pageBaseType=""> <add namespace="System.Web.Mvc" /> <add namespace="System.Web.Mvc.Ajax" /> <add namespace="System.Web.Mvc.Html" /> etc... </pages>