ama*_*eur 21 javascript css c# minify
我正在寻找围绕我的javascript/css实现一些性能优化.特别是寻求实现这种缩小和组合.我正在使用.net/c #Web应用程序开发.
我有几个选项,并寻找每个方面的反馈:
第一个是我遇到的这个聪明的工具Chirpy通过视觉工作室结合,缩小等 - > http://chirpy.codeplex.com/这是一个视觉工作室添加但是因为我在团队环境中,这个工具不理想.
我的下一个选择是使用Msbuild任务(http://yuicompressor.codeplex.com/)来缩小文件并将它们组合起来(可能从xml文件中读取需要组合的内容).虽然这对缩小罚款很有用,但我所担心的是,我必须保持必须结合的东西,这可能会令人头痛.
第三个选项是使用msbuild任务仅用于缩小,在运行时使用一些帮助程序类,在每页的基础上组合文件.这将合并文件,为其命名并为其添加版本.
我可以考虑其他任何选择吗?我对最后一个选项的关注是它可能有性能问题,因为我必须从本地驱动器打开文件,读取其内容然后合并文件.这在运行时很多处理.我正在寻找类似Squishit的东西 - https://github.com/jetheredge/SquishIt/downloads这会在运行时缩小文件,但我会在编译时看看这样做.
那么对我的方法的任何反馈都会很棒吗?如果第三种选择不会导致性能问题,我就会引领它.
Mat*_*att 11
我们已经使用几个ASP.NET Web应用程序做了类似的事情.具体来说,我们使用Yahoo Yui压缩器,它具有.NET库版本,您可以在应用程序中引用它.
我们采用的方法是在运行时生成必要的合并/缩小文件.我们将所有这些逻辑包装到ASP.NET控件中,但根据您的项目,这不是必需的.
作为一些锦上添花:
我们发现这个过程非常好用.我们将它构建到一个库中,这样我们所有的ASP.NET站点都可以利用它们.如果每个页面具有不同的依赖关系,那么构建后的脚本会变得复杂,但运行时可以很容易地确定这一点.并且,如果有人需要快速修复CSS文件,他们可以这样做,删除文件的合并版本,并且该过程将自动重新开始,而无需使用MSBuild或NAnt进行后期构建处理.
RequestReduce为在运行时组合和缩小javascript和css提供了一个非常好的解决方案.它还会尝试精灵您的背景图像.它缓存已处理的文件,并使用自定义ETag和远期标头为它们提供服务.RequestReduce使用响应过滤器来转换内容,因此基本功能不需要代码或配置.它可以配置为在Web场环境中工作,并跨多个服务器同步内容,并且可以配置为指向CDN.它可以从http://www.RequestReduce.com下载,也可以通过Nuget从Visual Studio下载.该源代码位于https://github.com/mwrock/RequestReduce.