2010-03-19 15 views
5

Aşağıda gibi bir NAnt komut dosyası var:Nasıl NAnt içinde 'if' durumu MSBuild dönüştürmek için?

<if test="${a}>${b}">  
    <call target="target"/> 
</if> 

İstediğim şey onu MSBuild komut dosyasına dönüştürmektir. Yazma koşullarının bulunduğu bir etiket bulunduğunu ancak sadece özellik/öğe tanımlamak için kullanıldığını tespit ettim.

MSBuild'de 'if' koşulu yazabilir miyiz? Lütfen yardım edin!

cevap

5

Her Msbuild görev isteğe bağlı Durumu parametresi vardır:

<CallTarget Targets="target" Condition="${a} &gt; ${b}"/> 

Düzenleme: Birden görevi yürütmek için bir koşul gerekiyorsa, sen Durumu parametre foreach görevi tekrar edebilir ya yaparsın bir hedefin birden görev çağrısı encapsulate

<Target Name="MultipleCall" Condition="${a} &gt; ${b}"> 
    <CallTarget Targets="targetA"/> 
    <CallTarget Targets="targetB"/> 
</Target> 

(karakter < ve> şekilde çıkmalıdır)

+0

Teşekkürler madgnome! Ancak, birden çok görevi yürütmek için bir koşul gerekiyorsa: $ {b}" <çağrı target = "target1" /> <çağrı target = "target1" /> ... <çağrı target = "targetN" /> Sizden duymayı umuyoruz. –

+0

Veya Seçin/Nela (http://msdn.microsoft.com/en-us/library/ms164307.aspx) kullanın – yoyo

+0

Veya değil - Uygun/Uygun göründüğünde seçin, ancak maalesef Seç yapı hedef. :-p – yoyo