网上找了好久终于找到一个能跟VS集成使用的JS和CSS压缩工具,因为害怕忘记,所以给转发过来,顺便翻译一下,大学那会儿学的英语基本上都已经还给老师了,所以翻译的不太好,不过能看懂就成,对吧?

原文地址:http://www.asp.net/ajaxlibrary/AjaxMinQuickStart.ashx

一、在命令行中使用

在下载安装完成Microsoft Ajax Minifier之后,你就可以以命令的方式使用它了。单击“开始”——“所有程序”——“Microsoft Ajax Minifier”——“Microsoft Ajax Minifier Command Prompt”,在打开的窗口中输入文件名(包括文件目录)以及要输出的的文件名,例如:“ajaxmin test.js -o test.min.js”,然后回车,Microsoft Ajax Minifier就会给出压缩率,并且生成新的已经压缩过的文件。

同样,CSS文件也可以使用相同的命令进行压缩。

执行效果如图:

二、在Visual Studio(VS)中集成使用

在VS中整合Microsoft Ajax Minifier之后,每次生成项目的时候,它将会自动将所有的JS文件和CSS文件生成一个压缩过的版本。

使用步骤如下:

1、在VS中,单击“工具”——“选项”——“项目和解决方案”——选中“总是显示解决方案”

2、右击当前的解决方案,然后选择“卸载项目”

3、右击刚刚卸载的项目,选择“编辑*.csproj”,如图所示:

4、在</Project>标签之前添加如下代码:

<Import Project="$(MSBuildExtensionsPath)\Microsoft\MicrosoftAjax\ajaxmin.tasks" />
<Target Name="AfterBuild">
  <ItemGroup>
    <JS Include="**\*.js" Exclude="**\*.min.js;Scripts\*.js" />
  </ItemGroup>
  <ItemGroup>
    <CSS Include="**\*.css" Exclude="**\*.min.css" />
  </ItemGroup>
  <AjaxMin JsSourceFiles="@(JS)" JsSourceExtensionPattern="\.js$" JsTargetExtension=".min.js" CssSourceFiles="@(CSS)" CssSourceExtensionPattern="\.css$" CssTargetExtension=".min.css">
  </AjaxMin>
</Target>

这些代码表示导入一个名为ajaxmin的自定义MSBuild。它的主要任务是压缩项目中所有的Javascript和CSS文件,所有的JS文件和CSS文件都将会被重命名为*.min.js和*.min.css。

5、右击你的解决方案,然后选择“重新加载项目”。

做完以上这些步骤之后,每次生成项目的时候,项目中所有的JS和CSS文件将都会被压缩,并且生成一个.min.js(css)的文件,当然,如果需要在项目中显示这些被压缩过的文件的话,你需要在项目中选择“显示所有文件”选项

三、在源代码控制器中使用Microsoft Ajax Minifier

因为这些压缩文件是在生成操作中输出的文件,因此,建议您将这些压缩文件的处理方式跟其他VS自动生成的文件一样,强烈建议不要将这些文件包含在VS项目中,并且不要使用源代码管理器。

如果您将这些压缩文件包含进项目中,并且使用源代码管理器管理这些文件的话,你将会面临一些麻烦。当你从源代码管理器中检出这些文件的时候,他们的属性都是只读的,所以当你再次尝试生成操作的时候,Microsoft Ajax Minifier就会生成一个“尝试写入一个只读文件”的错误。

原文地址:http://blog.sina.com.cn/s/blog_4c19412f010176hm.html

【翻译】Microsoft Ajax Minifier 快速使用指南(与VS集成使用) 编译后直接压缩项目的JS或CSS文件的更多相关文章

  1. 将Microsoft Ajax Minifier集成到VS2013对JS、CSS进行编译时压缩

    在网站发布中,一般要将js,css文件压缩减少体积,以减少在HTTP请求中的流量.将Microsoft Ajax Minifier集成到VS2013中就可以对JS.CSS进行编译时压缩. VS2013 ...

  2. 翻译-QPKG开发工具快速开始指南

    QPKG开发工具快速开始指南 指导你编译你自己的QPKG软件包 目录 什么是QDK 下载QDK 安装QDK 编译你自己的QPKG软件包 搭建QPKG编译环境 配置QPKG 定制QPKG程序 向QPKG ...

  3. WPF/MVVM 快速开始指南(译)(转)

    WPF/MVVM 快速开始指南(译) 本篇文章是Barry Lapthorn创作的,感觉写得很好,翻译一下,做个纪念.由于英文水平实在太烂,所以翻译有错或者译得不好的地方请多指正.另外由于原文是针对W ...

  4. AngularJS快速入门指南18:Application

    是时候创建一个真正的AngularJS单页面应用程序了(SPA). 一个AngularJS应用程序示例 你已经了解了足够多的内容来创建第一个AngularJS应用程序: My Note Save Cl ...

  5. AngularJS快速入门指南17:Includes

    使用AngularJS,你可以在HTML中包含其它的HTML文件. 在HTML中包含其它HTML文件? 当前的HTML文档还不支持该功能.不过W3C建议在后续的HTML版本中增加HTML import ...

  6. AngularJS快速入门指南16:Bootstrap

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

  7. AngularJS快速入门指南14:数据验证

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

  8. AngularJS快速入门指南12:模块

    AngularJS模块定义了一个application. 模块是一个application中不同部分的容器. application中的所有控制器都应该属于一个模块. 带有一个控制器的模块 下面这个a ...

  9. AngularJS快速入门指南09:SQL

    我们可以将之前章节中的代码用来从数据库中读取数据. 通过PHP Server从MySQL数据库中获取数据 <div ng-app="myApp" ng-controller= ...

随机推荐

  1. python 源代码分析之调试设置

    首先在官方下载源代码,我下载的是最新版本3.4.3版本:https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tgz 解压后的目录如下(借用网上的目 ...

  2. Amzon MWS API开发之 上传数据

    亚马逊上传数据,现有能操作的功能有很多:库存数量.跟踪号.价格.商品....... 我们可以设置FeedType值,根据需要,再上传对应的xml文件即可. 下面可以看看FeedType类型 这次我们拿 ...

  3. 《how to design programs》9.3处理任意长度的表

    假定一个玩具商店要把货物库存清单存放在计算机之中,这样,店里的员工就可以快速判断商店里是否还有某种玩具存货.简言之,商店需要一个能够检查库存是否含有玩具'doll 的函数contains-doll?, ...

  4. boost::asio 使用 libcurl

    curl 使用 asio 的官方样例 http://curl.haxx.se/libcurl/c/asiohiper.html, 但这个例子用起来有很明细的 bug,asio 异步IO 只注册一次,也 ...

  5. Altium designer使用技巧集(1)

    1.如何生成PCB 先得新建个PCB文件(File-New-Pcb):然后保存下,在新建的PCB文件下:Design-Import Changes From PCB_PROJECT1.PRJPCB(D ...

  6. springMVC3学习(四)--訪问静态文件如js,jpg,css

    假设你的DispatcherServlet拦截的是*.do这种URL.就不存在訪问不到静态资源的问题 假设你的DispatcherServlet拦截了"/"全部的请求,那同一时候对 ...

  7. 深入理解JVM : Java垃圾收集器

    如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现. Java虚拟机规范中对垃圾收集器应该如何实现并没有任何规定,因此不同的厂商.不同版本的虚拟机所提供的垃圾收集器都可能会有很大差 ...

  8. class如何命名更规范

    相信写css的人都会遇到下面的问题: 糟糕,怎么命名这个class,好像不太贴切,要是冲突了怎么办,要不要设计成通用一点... 而改别人css代码的时候则会一直有个疑问:这个class到底是只在这个地 ...

  9. js callback函数

    A callback is a function that is passed as an argument to another function and is executed after its ...

  10. TcpClient

    public class TcpClientSession { protected TcpClient Client { get; set; } /// <summary> /// 远程地 ...