Visual studio 2010 在VisualStudio2010中单独缩小JS和CSS

Visual studio 2010 在VisualStudio2010中单独缩小JS和CSS,visual-studio-2010,minify,yui-compressor,microsoft-ajax-minifier,Visual Studio 2010,Minify,Yui Compressor,Microsoft Ajax Minifier,我目前正在将一个项目迁移到VisualStudio2010,并试图找出如何在构建时缩小JS和CSS文件 <ItemGroup> <JavaScriptFiles Remove="@(JavaScriptFiles)" /> <JavaScriptFiles Include="../js/2.js"/> </ItemGroup> <CompressorTask JavaScriptFiles="@(JavaScriptFiles)"

我目前正在将一个项目迁移到VisualStudio2010,并试图找出如何在构建时缩小JS和CSS文件

<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/2.js"/>
</ItemGroup>
<CompressorTask
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/2.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/> 
<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/3.js" />
  <JavaScriptFiles Include="../js/4.js" />
</ItemGroup>
<CompressorTask
  CssFiles="@(CssFiles)"
  DeleteCssFiles="false"
  CssOutputFile="../css/release.css"
  CssCompressionType="YuiStockCompression"
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/3.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/>
在VisualStudio2008中,我使用了一个与引用。在VisualStudio2010中,Web部署项目似乎已集成到构建过程中。现在在公测中有了这一点,我比以往任何时候都更困惑

<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/2.js"/>
</ItemGroup>
<CompressorTask
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/2.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/> 
<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/3.js" />
  <JavaScriptFiles Include="../js/4.js" />
</ItemGroup>
<CompressorTask
  CssFiles="@(CssFiles)"
  DeleteCssFiles="false"
  CssOutputFile="../css/release.css"
  CssCompressionType="YuiStockCompression"
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/3.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/>
我发现,由于CSS的限制,这使得微软AJAX迷你版的业务无法起步。这不应该令人困惑……它应该是VisualStudio2010中的一个复选框

<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/2.js"/>
</ItemGroup>
<CompressorTask
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/2.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/> 
<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/3.js" />
  <JavaScriptFiles Include="../js/4.js" />
</ItemGroup>
<CompressorTask
  CssFiles="@(CssFiles)"
  DeleteCssFiles="false"
  CssOutputFile="../css/release.css"
  CssCompressionType="YuiStockCompression"
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/3.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/>

使用VisualStudio2010有没有一种简单的方法可以做到这一点?我在这里错过了什么

在VS2010中,通过编辑csproj aka msbuild文件,这仍然是可能的

<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/2.js"/>
</ItemGroup>
<CompressorTask
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/2.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/> 
<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/3.js" />
  <JavaScriptFiles Include="../js/4.js" />
</ItemGroup>
<CompressorTask
  CssFiles="@(CssFiles)"
  DeleteCssFiles="false"
  CssOutputFile="../css/release.css"
  CssCompressionType="YuiStockCompression"
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/3.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/>
摘自CodePlex

<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/2.js"/>
</ItemGroup>
<CompressorTask
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/2.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/> 
<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/3.js" />
  <JavaScriptFiles Include="../js/4.js" />
</ItemGroup>
<CompressorTask
  CssFiles="@(CssFiles)"
  DeleteCssFiles="false"
  CssOutputFile="../css/release.css"
  CssCompressionType="YuiStockCompression"
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/3.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/>

<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/2.js"/>
</ItemGroup>
<CompressorTask
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/2.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/> 
<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/3.js" />
  <JavaScriptFiles Include="../js/4.js" />
</ItemGroup>
<CompressorTask
  CssFiles="@(CssFiles)"
  DeleteCssFiles="false"
  CssOutputFile="../css/release.css"
  CssCompressionType="YuiStockCompression"
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/3.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/>


或者您也可以使用生成后事件并让它运行自定义msbuild文件。:)
<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/2.js"/>
</ItemGroup>
<CompressorTask
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/2.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/> 
<ItemGroup>
  <JavaScriptFiles Remove="@(JavaScriptFiles)" />
  <JavaScriptFiles Include="../js/3.js" />
  <JavaScriptFiles Include="../js/4.js" />
</ItemGroup>
<CompressorTask
  CssFiles="@(CssFiles)"
  DeleteCssFiles="false"
  CssOutputFile="../css/release.css"
  CssCompressionType="YuiStockCompression"
  JavaScriptFiles="@(JavaScriptFiles)"
  ObfuscateJavaScript="True"
  PreserveAllSemicolons="False"
  DisableOptimizations="Nope"
  EncodingType="Default"
  DeleteJavaScriptFiles="false"
  LineBreakPosition="-1"
  JavaScriptOutputFile="../js/3.min.js"
  LoggingType="ALittleBit"
  ThreadCulture="en-au"
  IsEvalIgnored="false"/>