0

当我在我的 mvc 项目中为我的 javascript 文件启用 BundleTable.EnableOptimizations 时,它不会加载任何文件。我也没有收到任何错误。它根本不会加载我的任何文件。

这是我的包:

bundles.Add(new ScriptBundle("~/Content/javascripts").Include(
                    "~/Content/js/custom.js",
                    "~/Content/js/customizer.js",
                    "~/Content/js/main.js",
                    "~/Content/js/bootstrap.js",
                    "~/Content/js/jquery-ui-min.js",
                    "~/Content/js/bootstrap-switch-min.js"
                    ));

在我看来:

@Scripts.Render("~/Content/javascripts")

所有文件都存在,因为当我禁用优化时,它又可以正常工作了。

4

2 回答 2

0

它可能会将您的虚拟路径误认为~/Content/javascripts是真实路径。试试这个。

bundles.Add(new ScriptBundle("~/bundles/javascripts").Include(
                "~/Content/js/custom.js",
                "~/Content/js/customizer.js",
                "~/Content/js/main.js",
                "~/Content/js/bootstrap.js",
                "~/Content/js/jquery-ui-min.js",
                "~/Content/js/bootstrap-switch-min.js"
                ));

在你看来。

@Scripts.Render("~/bundles/javascripts")
于 2014-02-22T21:09:50.997 回答
0

当您在 MVC 中启用包优化时,它使用虚拟文件夹 ~/Bundles/JQuery?v=xxxxx。在我的情况下,它被拒绝访问(使用 F12 工具),因为这个虚拟文件夹“bundles”不允许在没有登录的情况下访问。我将捆绑路径添加到 web config 为:

  <location path="bundles">
    <system.web>
      <authorization>
        <allow users="*" />
      </authorization>
    </system.web>
  </location>

希望这可以帮助

于 2014-09-08T15:09:30.040 回答