问题标签 [system.web.optimization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
281 浏览

asp.net-mvc - 是否可以在 CDN 上远程捆绑资源?

我正在尝试将我所有的 javascript 和 css(更少的文件等)移动到一个单独的站点,该站点将托管在我们将用作 CDN 的站点上。

但是我想利用 MVC ScriptBundle 和 StyleBundle 类来绑定到 BundleTransformer.Less。

起初我只是尝试了一个测试脚本包,如下所示:

这里的问题是,如果我处于调试模式或优化关闭,则不会输出任何脚本,因为我没有包含任何内容。如果我对其进行优化,只需将 cdn 链接放入脚本标记中。

理想情况下,我不想在站点中包含脚本和样式(我可以将虚拟目录映射到它们在 cdn 上的位置)。

我想要做的是在 CDN 上构建我所有的包,然后通过链接到它们

但是,生成的最小化链接如下所示:

查询字符串上的 v 是缓存破坏器。我认为,如果我只是链接到它们,那么每次我有机会使用新的缓存破坏者时,我都必须手动更新我的所有链接。

有没有办法处理我已经失踪的这个问题?从我收集到的信息来看,如果我将捆绑移动到 CDN 本身,那么我将无法在我的 razor 模板中使用 @Scripts 或 @Styles。

0 投票
1 回答
162 浏览

asp.net - 不为区域内的路径调用 LessAssetHandler

我对 BundleTransformer.Less 库附带的 LessAssetHandler 有疑问。我在调试模式下使用 LessAssetHandler 作为 HttpHandler 来转换较少的文件。一切正常,除了 ASP.NET 区域内的文件不由 LessAssetHandler 处理。例如文件 /Content/Style/page.less 由 LessAssetHandler 处理,文件 /Areas/Admin/Content/Style/page.less 的字节不调用此处理程序。我以以下方式配置了处理程序:

如何强制 MVC 通过 LessAssetHandler 从区域路由更少的文件?

0 投票
1 回答
101 浏览

css - 如何设置 System.Web.Optimization 捆绑器以正确转换 ISO unicode

我的 CSS:

转换为:

在捆绑过程中,我不知道如何获取它,因此内容仍然是空格、子弹、空格。

0 投票
0 回答
100 浏览

c# - 如何使用 ASP.NET 捆绑从另一个应用程序提供捆绑包?

我的解决方案由几个共享相同静态内容的 Web 应用程序组成。

我最近一直在使用 Microsoft ASP.NET 优化框架来捆绑这些文件。

问题是我只有一个 Global.asax 文件,我在其中注册了所有捆绑包,例如:

然后在我的母版页上,我有:

要在任何其他应用程序上引用此文件,我必须使用完整路径:

这样做的问题是,在调试模式下运行时,第二个应用程序静态文件显示为包,而不是单个/分隔文件。

此外,在发布模式下运行时,文件在没有哈希的情况下被提取(这意味着如果它们被缓存,它们将不会被更新)

主应用 在第一个应用程序上获取静态文件

二次应用 在第二个应用程序上获取静态文件

我想通过在每个项目之间复制所有静态文件并在 Global.asax 中单独注册它们来解决这个问题(目前只有主应用程序有 Global.asax)

0 投票
1 回答
271 浏览

system.web.optimization - 使用 html 页面捆绑和缩小

我在我的项目中使用 asp.net 4.5 捆绑和缩小。我想在 html 页面中使用 jscripts 包。我试过没有成功

我的问题是可以在 html 页面中使用 jscripts 或 CSS 包吗?

0 投票
2 回答
3344 浏览

asp.net - 命名空间“System.Web”中不存在类型或命名空间名称“优化”(您是否缺少程序集引用?)

我将三个 .ASPX 文件及其关联的 .cs 和 .designer.cs 文件移动到不同的文件夹,并更改了它们的名称。当我尝试重新编译时,我收到了上面关于 5-6 个不同 .ASPX 文件的消息,包括我移动的三个。.ASPX 文件中的行号总是靠近顶部(第 10-20 行左右),但每次都在不同的标签上。我还在 .cs 文件上收到了大约 250 条其他消息,说许多(可能是所有).ASPX 文件中的所有控件都不存在。

我发现的有关此消息的大多数文章都涉及不同版本的 MVC,但这不是 MVC 应用程序。我确实尝试过调整 NuGet 设置,并尝试将 web.config 中对 System.Web.Optimization 的引用注释掉,但均未成功。

我还尝试从项目中排除有问题的 .ASPX 文件并重新包含它们。这导致该文件的消息消失,但是当我排除最后一个文件时,相同的消息出现在另一个文件上,通常是项目中的下一个文件。

编辑:其他几个问题的答案涉及添加缺少的参考,但在我的情况下参考已经存在。

0 投票
1 回答
2008 浏览

c# - asp.net Webforms Bundling & minification - 捆绑脚本抛出 404

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

让我先分享我遵循的步骤。

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

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

我的代码捆绑 JS 文件。

...

  1. 向 aspx 页面添加了以下标记
  1. 设置 BundleTable.EnableOptimizations = true; 在 bundleConfig 中,形成的 url 是

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

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

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

0 投票
2 回答
2119 浏览

asp.net - ASP.NET MVC:StyleBundle IncludeDirectory & CssRewriteUrlTransform

当我捆绑我的 CSS 样式表时,我的图像没有得到解决,我遇到了同样的问题。

现在我发现一些 SO-Answers 建议将new CssRewriteUrlTransform()其用作新 StyleBundle-Object 的“Include”-Method 的第二个参数。比如这个

我使用 IncludeDirectory 是因为我有一个目录,我可以在其中添加文件而无需在某处注册(而且它们有很多我不想列出的文件)。但是 IncludeDirectory 没有重写来传递 CssRewriteUrlTransform-Object:

不起作用: bundles.Add(new StyleBundle("~/bundles/css/directives").IncludeDirectory("~/app/directives", "*.css", true));

我也试过:

但是变换属于 IBundleTransform 类型,我正在尝试传递一个 IItemTransform。

关于如何做到这一点的任何建议?

0 投票
1 回答
614 浏览

c# - 异步加载脚本时如何编写 CDN 后备表达式?

我正在按如下方式设置我的 jQuery 包:

为了提高我的 Google PageSpeed Insights 分数,我选择异步加载脚本:

但是现在,它似乎总是失败 CDN 后备表达式并最终加载脚本两次;一次来自我的后备包,一次来自 CDN,当异步调用完成时。我假设是因为当它运行回退测试时,对 CDN 的异步调用尚未完成。

有没有更聪明的方法可以编写我的后备表达式?

完全有更好的解决方案吗?

我会将 jQuery 加载到更靠近底部的位置,但它会破坏任何依赖它的内联调用。

0 投票
1 回答
246 浏览

javascript - 如何将 System.Web.Optimization (.net js bundler) 与 amd 模块一起使用?

现在我正在使用System.Web.Optimizationjs bundler 处理项目。

我如何amd在这个捆绑器中使用模块?

现在我显然得到了define is not defined错误。
Webpack 和 r.js 可以处理依赖项,但我还不想更改 bundler。