アプリケーション (.net mvc 3) をパッケージ化する前に、カスタム タスクを実行して .less ファイルを .css にコンパイルしたいと考えています。
私は MSBUILD スクリプトを作成した経験があまりないので、オンラインで読んで、以下のコードを思いつきました。それは機能しますが、ItemGroup の明示的な宣言をスキップして、スクリプトに「Skins フォルダーの下の任意のフォルダー」を探すように指示する方法が必要だと思います。それはまったく可能ですか?
<Target Name="CompileLessToCss" BeforeTargets="Package">
<PropertyGroup>
<DotLessCompiler>..\..\Libraries\dotless\dotless.Compiler.exe</DotLessCompiler>
<!--Skin Paths -->
<ApplicationSkins>Content\Skins\</ApplicationSkins>
<MobileSkins>Areas\Mobile\Content\Skins\</MobileSkins>
<!--Style FileNames -->
<LessPath>\less\main.less</LessPath>
<CssPath>\css\main.min.css</CssPath>
</PropertyGroup>
<ItemGroup>
<Skins Include="$(ApplicationSkins)Blue"/>
<Skins Include="$(MobileSkins)Blue"/>
<Skins Include="$(ApplicationSkins)Red"/>
<Skins Include="$(MobileSkins)Red"/>
<Skins Include="$(ApplicationSkins)Yellow"/>
<Skins Include="$(MobileSkins)Yellow"/>
</ItemGroup>
<!-- Compiling Less Files -->
<Message Text="Compiling Less For Skins: @(Skins)"/>
<Exec Command="$(DotLessCompiler) -m "%(Skins.FullPath)$(LessPath)" "%(Skins.FullPath)$(CssPath)"" />