我正在设置我的MVC4应用程序以使用内置的ASP.Net捆绑(从Squishit转换)。我已经设置了BundleConfig类,并且一切正常,但是对于Razor文件只引用一个JavaScript文件的情况,我认为不需要涉及该配置文件。我宁愿在Razor'Scripts'部分中将脚本添加到BundleTable,然后在那里渲染它。这样,如果我不得不改变BundleConfig文件,我可以很容易地进行小的更改。这就是我所拥有的:
@section Scripts
{
@{
const string bundle = "~/bundles/{myVirtualBundlePath}";
BundleTable.Bundles.Add(new ScriptBundle(bundle)
.Include("{myActualJavaScriptFilePath}"));
Scripts.Render(bundle);
}
}
虽然这构建正常,但对该捆绑文件的引用永远不会输出到HTML。
我是否需要获得BundleConfig使用的特定BundleCollection的引用?
答案 0 :(得分:6)
我的(有效)之间的唯一区别是我在脚本块之外添加了bundle。如果这不起作用,请确保它在主捆绑启动中有效,这可能是其他一些问题。
@{ 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")
}