asp.net Webforms 捆绑和缩小 - 捆绑脚本抛出 404

San*_*ile 5 c# asp.net webforms bundling-and-minification system.web.optimization

我一直在尝试为我现有的 asp.net webforms 项目实现捆绑和缩小,不幸的是它最终得到了 404 响应。

首先让我分享一下我遵循的步骤。

  1. System.Web.Optimization通过nuget安装。

  2. 添加BundleConfig类并在 Glabal.asax Application_Start 事件上注册它

我的代码用于捆绑 JS 文件。

public static void RegisterBundles(BundleCollection bundles)
{
    bundles.Add(new ScriptBundle("~/bundles/modelJs").Include( 
    "~/src/model.js", 
    "~/src/calender.js", 
    "~/src/common.js", 
    "~/src/insurance.js")); 
Run Code Online (Sandbox Code Playgroud)

...

  1. 向 aspx 页面添加以下标记
 <asp:PlaceHolder runat="server"> 
    <%: System.Web.Optimization.Scripts.Render("~/bundles/modelJs") %> 
    </asp:PlaceHolder>
Run Code Online (Sandbox Code Playgroud)
  1. 设置 BundleTable.EnableOptimizations = true; 在bundleConfig中,形成的url是

http://localhost:9011/bundles/modelJs/?v=xNmmFhbzC1isUARLQne-XoBRkWBWApbnRQX8AGvNxQY1

我还检查了 VS2013 Webforms 应用程序中添加的示例项目,令人惊讶的是,它似乎工作正常。

我在 SO 上看到了很多类似问题的问题,但无法解决。

San*_*ile 6

嗯,解决方案其实很简单。在本例中,只是在捆绑文件夹后添加了“/” modeljs

 bundles.Add(new ScriptBundle("~/bundles/modelJs/").Include( 
Run Code Online (Sandbox Code Playgroud)

不幸的是,我没有在任何可用的源代码中找到这个,所以我最终浪费了很多时间。:-/