जब एक ही संपत्ति में अर्धविराम होता है, तो एमएसबिल्ड स्वचालित रूप से किसी आइटम समूह में उपयोग किए जाने पर गुणों की सूची में संपत्ति को पार्स करता है। यहाँ मेरी परियोजना से एक टुकड़ा है:एमएसबिल्ड: अर्धविराम सीमांकित संपत्ति के पार्सिंग को नियंत्रित करने के लिए कैसे करें
<PropertyGroup>
<ConnectionString>workstation id=.;packet size=4096;Integrated Security=SSPI;data source=.;initial catalog=$(SqlDbName)</ConnectionString>
</PropertyGroup>
<ItemGroup>
<InstallShieldProperties Include="
CONNECTIONSTRING=$(ConnectionString);
Another=$(value)"/>
</ItemGroup>
एक कार्य @ (InstallShieldProperties) itemgroup की खपत करते हैं, MSBuild सबसेट संपत्तियों की एक सूची में ConnectionString गुण पार्स करेगा क्योंकि इसमें अर्धविराम शामिल हैं।
foreach (string property in Properties)
{
// Properties array parsed to pieces
}
मुझे पता है कि मैं आइटम समूह के डिलीमीटर को बदल सकता हूं, लेकिन इससे कोई फर्क नहीं पड़ता। मैं कस्टम कार्य के भीतर स्ट्रिंग [] सरणी में हेरफेर करने से बचने की कोशिश कर रहा हूं।
बहुत उपयोगी! और [यहां संपत्ति कार्यों के दस्तावेज का एक लिंक है] (http://msdn.microsoft.com/en-us/library/dd633440.aspx)। –