5

組み込みのASP.Netバンドル(Squishitからの変換)を使用するようにMVC4アプリを設定しています。BundleConfigクラスを設定しましたが、すべて正常に機能しますが、Razorファイルに1つのJavaScriptファイルへの参照しかない場合は、その構成ファイルを含める必要はありません。Razorの「スクリプト」セクションのBundleTableにスクリプトを追加して、そこにレンダリングしたいだけです。そうすれば、BundleConfigファイルを変更する必要がない場合でも、小さな変更に対して非常に簡単に本番環境にリリースできます。これは私が持っているものです:

@section Scripts
{
    @{   
        const string bundle = "~/bundles/{myVirtualBundlePath}";
        BundleTable.Bundles.Add(new ScriptBundle(bundle)
            .Include("{myActualJavaScriptFilePath}"));
        Scripts.Render(bundle);
    }
}

これは問題なくビルドされますが、バンドルされたファイルへの参照がHTMLに出力されることはありません。

BundleConfigが使用する特定のBundleCollectionへの参照を取得する必要がありますか?

4

1 に答える 1

6

私の(動作する)違いは、スクリプトブロックの外にバンドルを追加することだけです。これが機能しない場合は、メインバンドルの起動時に機能することを確認してください。他の問題である可能性があります。

@{ BundleTable.Bundles.Add(new ScriptBundle("~/Scripts/Plugins/highcharts")
                           .Include("~/Scripts/Plugins/highcharts.js")); }
@section Scripts
{    
    @Scripts.Render("~/Scripts/Plugins/highcharts")
    @Scripts.Render("~/Scripts/Views/Charts/transportDelayCharts")
}
于 2013-01-16T05:55:08.993 に答える