c# - ASP.NET 中的资源(JS、CSS)压缩、缩小和版本控制

标签 c# asp.net javascript performance yui-compressor

我从事的 Web 项目即将发布重大版本,我开始越来越多地考虑 javascript/css 性能和版本控制。到目前为止,我有几个高层次的想法:

  1. 编写(或定制)一个 http 处理程序来为我做这件事。这显然还必须处理缓存,以证明会发生的动态 IO 是合理的。
  2. 将这些步骤添加到仅为部署运行的自定义 msbuild 脚本中。

我也在考虑为我部署到的每个服务器自动生成配置文件,这适用于第二个想法。我看到的第一个想法的主要优势是我可以动态处理版本控制(至少我底部的一个链接是这么说的,我还没有说服自己这真的有效)。

无论如何,我很好奇这些问题是否已经得到解决。我喜欢任何反馈。谢谢!

以下是我目前一直在寻找的一些资源:

http://madskristensen.net/post/Combine-multiple-stylesheets-at-runtime.aspx http://madskristensen.net/post/Remove-whitespace-from-stylesheets-and-JavaScript-files.aspx http://www.west-wind.com/WebLog/posts/413878.aspx http://svn.offwhite.net/trac/SmallSharpTools.Packer/wiki

最佳答案

您将此作为您拥有的持续集成构建过程的一部分。

将所有 JS 与之前检查的反转进行比较,对于每个有更改的,在该 JS 文件上调用 YUI Compressor 并使用当前修订号命名输出。将该文件添加到您的存储库,并更改配置文件以具有该 js 文件的最新修订号。然后你会写一个导入js文件的自定义控件。此控件在开发机器上运行时将使用未压缩的 js,或者在已部署的设置上运行时使用配置文件中的修订号的压缩文件。

关于c# - ASP.NET 中的资源(JS、CSS)压缩、缩小和版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1146373/

相关文章:

c# - ASP.NET Web Forms 4.5 模型绑定(bind),其中模型包含集合

javascript - 可能很简单 : showing and hiding a div using removeClass/addClass

c# - 异步等待、异常处理和继续使用 TaskContinuationOptions.OnlyOnFaulted

c# - 身份在 Asp .Net MVC 5 中如何工作

javascript - 如何在从 canvas.todataURL 转换时提高图像的分辨率

javascript - 文本到数字的转换

javascript - Yammer REST API - 使用换行符发布到 messages.json

c# - FindControl 返回 Null

c# - 在 C# 中翻译 COM 错误代码

javascript - UWP webView 相当于 Android 中的 addJavascriptInterface()