[解決済み】MVC 4 @Scripts "does not exist".
質問
ASP.NET MVC 4 プロジェクトを作成し、Visual Studio 2012 RC を使用して、Controller と Razor Views を作成しました。
Index
と
Create
アクションです。
アプリケーションを実行しようと思って
Create
ビューで、次のエラーが表示されました。
コンパイラーエラーメッセージ。CS0103: 名前 'Scripts' は次の場所に存在しません。 現在のコンテキスト
問題は、Viewの下部に自動的に追加された以下のコードです。
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
なぜScriptsは存在しないのですか?
アセンブリ System.Web.Mvc.dll, v4.0.0.0 の基本ウェブページクラスを調べました。
以下のヘルパープロパティが利用できることが確認できます。
- Ajax
- Html
- URL
しかし、Scriptsという名前のものはない。
何か思い当たることはありますか?
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>
EDIT #2です。
を使うことをブログで紹介している人がいます。
@Scripts
ヘルパーを使用します。
しかし、Visual Studio 2012 RC を新しい Windows 8 にインストールしたところ、次のことができなくなりました。
@Scripts
Visual Studio が生成された View に追加しているにもかかわらず、です。
解決策を以下に示します。
最終的にはアップデートで解決したようなので、これをどう閉じていいのかわかりません。私は、新しいプロジェクトを使用して、クリーンインストールを実行したことを再確認しました。しかし、私が作った同じ失敗したプロジェクトは、様々なアップデートと手動での明らかな介入の後、現在問題なく動作しています。すべての考えに感謝しますが、当時は間違いなく問題がありました;)
解決方法は?
ここで重要なのは
<add namespace="System.Web.Optimization" />
を両方のweb.configファイルに追加してください。私のシナリオは、プロジェクトとメイン/ルート web.config の両方で System.Web.Optimization を参照していましたが、@Scripts はまだ正しく動作しませんでした。Views web.config ファイルに名前空間参照を追加して、動作するようにする必要があります。
UPDATEしてください。
MVC 4 のリリース以降、System.Web.Optimization は廃止されました。空のソリューションから始める場合は、次の nuget パッケージをインストールする必要があります。
Install-Package Microsoft.AspNet.Web.Optimization
Web.config ファイルで System.Web.Optimization を参照する必要があることに変わりはありません。詳細については、このトピックを参照してください。
MVC-3から4へ変換されたアプリでSystem.Web.Optimizationへの参照を追加する方法
多くの方のご指摘の通りです。 VSの再起動 は、上記の手順の後に、これを動作させるために必要な場合があります。
関連
-
[解決済み】同じキーのアイテムがすでに追加されています。
-
[解決済み] ファイルアップロード ASP.NET MVC 3.0
-
[解決済み] OwinStartupが起動しない
-
[解決済み】Html.ActionLinkが"?Length=4 "とレンダリングされるのはなぜか?
-
[解決済み】"JSONリクエストが大きすぎてデシリアライズできませんでした "の表示について
-
[解決済み】NULLモデルを持つrenderpartialは、間違った型を渡される
-
[解決済み】ViewModelのベストプラクティス
-
[解決済み] MVCのHTMLヘルパーで生成されたHTML要素にclass属性を追加するにはどうすればよいですか?
-
[解決済み] ASP.NET MVCコントローラから外部URIへのリダイレクト
-
[解決済み] Razorを使ってエンコードされていないJsonをViewに書き込むにはどうしたらいいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Automapperにタイプマップの設定がない、またはマッピングがサポートされていない - エラー
-
[解決済み] MVC-3から4へ変換されたアプリでSystem.Web.Optimizationへの参照を追加する方法
-
[解決済み] Razor View throwing "The name 'model' does not exist in the current context".
-
[解決済み] 既存のデータベースの選択されたテーブルからDbContextをScaffoldすることができますか[重複]。
-
[解決済み] OwinStartupが起動しない
-
[解決済み】ASP.NET MVC Html.ValidationSummary(true) でモデルエラーが表示されない。
-
[解決済み] MVCのHTMLヘルパーで生成されたHTML要素にclass属性を追加するにはどうすればよいですか?
-
[解決済み] mvc 4 で部分ビューにパラメータを渡すにはどうすればよいですか?
-
[解決済み] ASP.NET MVC: UrlHelperを使用するコントローラのユニットテスト
-
[解決済み] NerdDinnerでASP.NET MVCでModelState.IsValidは何のために有効なのか?