के असेंबली संस्करण के रूप में MSBuild कमांड लाइन के साथ प्रकाशित संस्करण निर्दिष्ट करें मेरे पास एक साधारण बैच फ़ाइल है जो मैं एक डॉस कमांड लाइन से चल रहा हूं जिसका उपयोग एक छोटा सी # अनुप्रयोग बनाने के लिए किया जाता है जो ClickOnce प्रोजेक्ट प्रकाशित करता है। एक पंक्ति यह है:प्रोजेक्ट
msbuild MyApp.csproj /t:publish /property:PublishDir="deploy/"
यह वर्तमान में आवेदन प्रकाशित करता है, लेकिन यह का उपयोग करता है वर्शन प्रकाशित कि मैं दृश्य स्टूडियो के "प्रकाशन" टैब में स्थापित किया। मैं कमांड लाइन पर प्रकाशित संस्करण सेट करने में सक्षम होने की उम्मीद कर रहा हूं, और विशेष रूप से, मैं प्रोजेक्ट के असेंबली संस्करण का उपयोग करना चाहता हूं। कुछ की तरह:
msbuild MyApp.csproj /t:publish /property:PublishDir="deploy/" /property:PublishVersion="$(Proj.AssemblyVersion)"
मैं एक कस्टम कार्य बनाने के बिना ऐसा करने के लिए, के बाद से यह सिर्फ एक अंतरिम समाधान है उम्मीद कर रहा हूँ, और मैं बाद में एक और अधिक उचित निर्माण प्रणाली से प्रतिस्थापित कर देगा।
वैकल्पिक रूप से, मैं -Update
ध्वज के साथ Mage Command Line Tool उपयोग करते हुए प्रकाशित प्रकट संस्करण का अद्यतन करने को देखा है, लेकिन मैं कैसे PowerShell का उपयोग किए बिना परियोजना से विधानसभा संस्करण संख्या या बनाया विधानसभा पुनः प्राप्त करने या कुछ प्रोग्राम है कि होगा पता नहीं था डाउनलोड करने की आवश्यकता है। अगर मैं कुछ ऐसा उपयोग कर सकता हूं जो विजुअल स्टूडियो के साथ आता है, तो यह भी काम करेगा।
का जवाब है [इस सवाल] (http://stackoverflow.com/questions/1859328/setting-assemblyfileversion-with-msbuild-call) बिल्कुल मदद करो? – adrianbanks
@adrianbanks: यह बैच स्क्रिप्ट में कुछ चर से असेंबली संस्करण सेट करता है। मैं असेंबली संस्करण से तैनाती संस्करण सेट करने की उम्मीद कर रहा हूं (जहां असेंबली संस्करण परियोजना के लिए AssemblyInfo.cs में संग्रहीत है)। –