2010-05-11 16 views
52

में चर पारित करने के विभिन्न तरीके मैं एमएस बिल्ड के लिए नया हूं और विजुअल स्टूडियो के साथ शिप करने वाली कई लक्षित फाइलों की समीक्षा कर रहा हूं। मैं कुछ अलग अलग तरीकों से पारित कर दिया चर देखा और इन के बीच मतभेद की काफी यकीन नहीं कर रहा हूँ है:MSBuild

$(...) 
@(...) 
%(...) 

उत्तर

67
  • $(...)Property मूल्य (Property element बारे में अधिक जानकारी)

    <PropertyGroup> 
        <Configuration>Debug</Configuration> 
    </PropertyGroup> 
    
    <Message Text="Configuration = $(Configuration)"/> 
    
  • @(...)Item मूल्य (Item element बारे में अधिक जानकारी)

    <ItemGroup> 
        <Reference Include="System.Data"/> 
        <Reference Include="System.Web.*"/> 
    </ItemGroup> 
    
    <Message Text="References = @(Reference)"/> 
    
  • %(...) उपयोग करने के लिए प्रयोग किया जाता है का उपयोग करने में प्रयोग किया जाता हैacces करने के लिए प्रयोग किया जाता हैमूल्य (Item Metadata पर अधिक जानकारी)। यह batching करने के लिए भी प्रयोग किया जाता है।

    <ItemGroup> 
        <Compile Include="Account\ChangePassword.aspx.cs"> 
        <DependentUpon>ChangePassword.aspx</DependentUpon> 
        <SubType>ASPXCodeBehind</SubType> 
        <Compile/> 
    </ItemGroup> 
    
    <Message Text="Element @(Compile) of subtype %(SubType) and depend of %(DependentUpon)"/> 
    
14

Dollar - $(MyProp): आप PropertyGroups भीतर निर्दिष्ट मानों को संदर्भित करने देता है।

At Sign - @(CodeFile): आपको आइटम समूह के भीतर निर्दिष्ट वस्तुओं की सूचियों का संदर्भ देने की अनुमति देता है।

Percent - %(CodeFile.BatchNum): मेटाडेटा का उपयोग करके बैच किए गए आइटम समूह मानों का संदर्भ देने की अनुमति देता है। यह थोड़ा और जटिल है, इसलिए निश्चित रूप से अधिक जानकारी के लिए प्रलेखन की समीक्षा करें।

इन लिंक का उपयोग करने के तरीके के बारे में अधिक विस्तृत जानकारी के लिए प्रत्येक लिंक पर एक नज़र डालें। सौभाग्य की कामना, आशा है इससे सहायता मिलेगी!