5

Attualmente sto migrando un progetto in Visual Studio 2010 e sto cercando di capire come minimizzare i file JS e CSS singolarmente durante la compilazione.individualmente JS e CSS in Visual Studio 2010

In Visual Studio 2008 ho utilizzato uno Web Deployment Projects con un'attività di creazione che faceva riferimento allo C# port of the YUI Compressor. In Visual Studio 2010 i progetti di distribuzione Web sembrano essere stati integrati nel processo di compilazione. Ora c'è questo Microsoft AJAX Minifier in beta pubblica e sono più confuso che mai.

Ho trovato this blog post che rende il business con Microsoft AJAX Minifier un non-starter a causa delle limitazioni CSS. Ciò non dovrebbe confondere ... dovrebbe essere una casella di controllo in Visual Studio 2010.

C'è un modo semplice per fare ciò con Visual Studio 2010? Cosa mi manca qui gente?

risposta

4

Ciò dovrebbe essere ancora possibile con VS2010 modificando il file csproj aka msbuild.

Tratto da this thread su 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"/> 

+0

Oppure si può anche utilizzare gli eventi post-generazione e farla eseguire un file MSBuild personalizzato. :) –