C# 捆绑和缩小返回404 已安装软件包System.Web.Optimization

C# 捆绑和缩小返回404 已安装软件包System.Web.Optimization,c#,asp.net,asp.net-mvc,http-status-code-404,bundling-and-minification,C#,Asp.net,Asp.net Mvc,Http Status Code 404,Bundling And Minification,捆绑包的配置如下所示 using System.Web.Optimization; public class BundleConfig { public static void RegisterBundles(BundleCollection bundles) { bundles.Add(new ScriptBundle("~/Content/themes/base/js").Include("~/Scripts/Site.js")); bundl

捆绑包的配置如下所示

using System.Web.Optimization;
public class BundleConfig
{
    public static void RegisterBundles(BundleCollection bundles)
    {
        bundles.Add(new ScriptBundle("~/Content/themes/base/js").Include("~/Scripts/Site.js"));
        bundles.Add(new StyleBundle("~/Content/themes/base/css").Include("~/Content/Site.css"));

    }
}
  • 将此添加到Layout.cshtml

    @System.Web.Optimization.Scripts.Render("~/Content/themes/base/js")
    @System.Web.Optimization.Styles.Render("~/Content/themes/base/css")
    

  • css已成功缩小,但js文件返回404错误?

    请确保捆绑包的虚拟路径
    Content/themes/base/js
    与真实路径无关。出于这个原因,我们通常在虚拟路径中使用
    ~/bundles

    示例

    public static void RegisterBundles(BundleCollection bundles)
    {
        bundles.Add(new ScriptBundle("~/bundles/base/js").Include("~/Scripts/Site.js"));
        bundles.Add(new StyleBundle("~/bundles/base/css").Include("~/Content/Site.css"));
    
    }
    

    我的站点脚本包资源的一个生产服务器上突然收到404个错误

    经过一点搜索,我发现建议在
    system.webServer
    部分的
    web.config
    中使用以下解决方案,效果非常好

    <modules runAllManagedModulesForAllRequests="true">
        <remove name="BundleModule" />
        <add name="BundleModule" type="System.Web.Optimization.BundleModule" />
    </modules>
    
    
    
    @Andrei:谢谢你的编辑。你在
    脚本中有
    Site.js
    ,对吗?是的,我可以通过网络浏览器访问<代码>htt://localhost:8777/Scripts/Site.js
    是的,您的权利。它不应该和现有的物理位置相同。这是我修复它的原因