VS2010自动重建缩小的.js / .css文件

时间:2013-02-08 18:03:56

标签: asp.net visual-studio-2010 minify scriptmanager

问题


我一直在尝试在我们的VS2010(.net 4.)项目中集成javascript和css文件的缩小。据我所知,.net 4.5和VS2012将缩小版本编辑到编辑器中,因此它将像设置一个标志一样简单。不幸的是我们依靠VS2010(.net 4.0)。

让我解释一下我想做什么以及我不想做什么。

我不想用class / config文件/ etc进行大型设置只是为了缩小,因为所有这些东西都必须加载到我们的构建机器上,甚至构建xml文件可能必须修改才能使它成为工作。此外,一旦我们转到vs2012和.net 4.5,所有这些configs / classes / etc将不得不被丢弃,因为vs2012将具有内置功能。

这是我认为可能是最好的选择。由于我使用ScriptManager并且它已经可以根据构建类型提取.debug.js(非缩小)或.js(缩小)脚本,所以我需要做的就是拥有某种( pre?)构建事件,将重新构建一个非缩小的.js文件到一个缩小的文件。显然构建事件必须调用一个必须安装在本地计算机上的minication模块(YUI Compressor看起来非常好)。该模块将更新缩小的.js文件。

我一直在读这个,但我有点迷失了。有很多第三方工具都有很多我不想添加的设置和类。 有没有人像我解释的那样做类似的事情? 如果不是下一个最简单的解决方案是什么?

(顺便说一句,如果你打算转到VS2012 / 4.5,那对我们来说这不是解决方案)

解决方案

<小时/> 感谢 Parv Sharma 的回答。

我想解释一下我做了什么,以便将来可以帮助某人。

  1. 我安装了Microsoft Ajax Minifier
  2. 创建批处理文件以将minifer添加到ENVIRONMENT PATH变量:setx path / m“%PATH%; C:\ Program Files \ Microsoft \ Microsoft Ajax Minifier”
  3. 在我的项目中添加了以下预构建事件: ajaxmin $(ProjectDir)Script.js -out $(ProjectDir)Script.min.js -clobber
  4. 如果Script.min.js不存在,它将由构建事件创建,但不会添加到项目中(不确定如何通过事件执行此操作)。

    当你添加一个新的脚本文件mynewscript.js时,只需创建一个名为mynewscript.min.js的第二个空白文件,并为其添加一个预构建事件。

    使用此方法,您只需要对构建计算机执行Microsoft Ajax Minifier安装程序包和批处理文件。多数民众赞成,其他一切都将成为你的预建活动的一部分。

1 个答案:

答案 0 :(得分:2)

你正在寻找的可能就是这个 http://ajaxmin.codeplex.com/documentation
通过使用它,您将能够使用此第三方工具作为缩小器
下载工具后,您有2个选项
1.编辑MSBUILD文件以包括根据构建事件构建js 或2.将此工具附加到VS并为其指定一个关键组合..这样你就可以随时缩小,就像我们做的那样F5或Cntrl-Shift-B


只需连接到VS外部工具和工具菜单,并添加此工具所需的参数