6

मुझे नहीं पता कि ItemGroup उपयोग करने का सही प्रकार है या नहीं। मुझे 4 अलग-अलग बुलियन मिलेगा जो पसंद के आधार पर सच या गलत होंगे।एमएसबिल्ड आइटम समूह स्थिति के साथ

मैं सत्य या गलत के आधार पर इस "स्ट्रिंग्स" के साथ ItemGroup भरना चाहता हूं। क्या यह संभव है या मुझे क्या उपयोग करना चाहिए?

उदाहरण

Anders = true 
Peter = false 
Michael = false 
Gustaf = true 

मेरे ItemGroup तो होना चाहिए ऐन्डर्स और गुस्ताफ।

क्या यह संभव है या मुझे इसे कैसे हल करना चाहिए?

+0

क्या इन "तार" कर रहे हैं? क्या वे एक पाठ फ़ाइल में हैं? क्या वे msbuild गुण हैं? इसके अलावा, कृपया अपनी वर्तनी जांचें। यह 'आइटम समूह' नहीं है 'iteamgroup' – stijn

+0

msbuild उचित – user1540911

उत्तर

9

चूंकि आपके पास आइटम का एक समूह है, इसलिए शुरुआत से ही उन्हें ItemGroup में स्टोर करना बेहतर होगा क्योंकि यह सब कुछ है जिसके लिए इसका मतलब है और यह परिवर्तन आदि को भी अनुमति देता है। उदाहरण के लिए यह आपको प्राप्त करता है:

<ItemGroup> 
    <Names Include="Anders"> 
    <Value>True</Value> 
    </Names> 
    <Names Include="Peter"> 
    <Value>False</Value> 
    </Names> 
    <Names Include="Michael"> 
    <Value>False</Value> 
    </Names> 
    <Names Include="Gustaf"> 
    <Value>True</Value> 
    </Names> 
</ItemGroup> 

<Target Name="GetNames"> 

    <ItemGroup> 
    <AllNames Include="%(Names.Identity)" Condition="%(Names.Value)==true"/> 
    </ItemGroup> 

    <Message Text="@(AllNames)"/> <!--AllNames contains Anders and Gustaf--> 
</Target> 

लेकिन अगर वे गुण होना चाहिए, मुझे नहीं लगता कि उन सब को तो जैसे मैन्युअल की गणना की तुलना में एक और तरीका है है:

<PropertyGroup> 
    <Anders>True</Anders> 
    <Peter>False</Peter> 
    <Michael>False</Michael> 
    <Gustaf>True</Gustaf> 
</PropertyGroup> 

<Target Name="GetNames"> 

    <ItemGroup> 
    <AllNames Include="Anders" Condition="$(Anders)==true"/> 
    <AllNames Include="Peter" Condition="$(Peter)==true"/> 
    <AllNames Include="Michael" Condition="$(Michael)==true"/> 
    <AllNames Include="Gustaf" Condition="$(Gustaf)==true"/> 
    </ItemGroup> 

    <Message Text="@(AllNames)"/> 
</Target> 
संबंधित मुद्दे