2010-01-20 16 views
13

मैंने यहां असेंबली, फ़ाइल और असेंबली सूचनात्मक संस्करणों के बारे में धागे पढ़े हैं।संस्करण बनाम असेंबली (आदि) संस्करण प्रकाशित करें

मैं चाहूँगा पता करने के लिए जहां प्रकाशित संस्करण में फिट बैठता है। का परिणाम ...

string thisAppsVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); 

... AssemblyVersion प्रतीत होता है। अब तक मैं तैनाती वर्ग के साथ प्रकाशित संस्करण का उपयोग किया गया है:

ApplicationDeployment deployment = ApplicationDeployment.CurrentDeployment; 
Version thisAppsVersion = deployment.CurrentVersion; 

... लेकिन यह उपलब्ध है जब तक कि एप्लिकेशन इंस्टॉल है नहीं है। मुझे पसंद है कि इसमें संशोधन को स्वचालित रूप से बढ़ाने का विकल्प कैसा है।

क्या नेटवर्क तैनात किए बिना प्रकाशन संस्करण प्राप्त करने का कोई तरीका है? क्या यह ऐप के संस्करण का 'सार्वजनिक चेहरा' होना चाहिए?

Example: UI Version (twisted from Publish Version)

अग्रिम धन्यवाद!

ग्रेग

उत्तर

18

मुझे लगता है कि विभिन्न संस्करण अलग-अलग उद्देश्य प्रदान करते हैं।

1) विधानसभा लोड करने और विधानसभाओं को बांधने के लिए सीएलआर के लिए विधानसभा है। यह डेवलपर्स के लिए उपयोगी है लेकिन अंत उपयोगकर्ताओं के लिए उपयोगी नहीं है।

2) फ़ाइलवर्सन या असेंबलीफाइलवर्सन विंडोज़ निष्पादन योग्य फ़ाइल संस्करण के रूप में प्रदर्शित होता है। यह वही Win32 अनुप्रयोग का संस्करण है। और यह संस्करण सिस्टम और इंस्टॉलर्स द्वारा यह निर्धारित करने के लिए किया जाता है कि कौन सा संस्करण नया है।

3) प्रकाशन संस्करण का उपयोग तैनाती पैकेज के संस्करण के लिए किया जाता है। अलग-अलग प्रकाशन संस्करणों के साथ दो बार प्रकाशित एक ही द्विआधारी है।

4) जो संस्करण आप अपने अंतिम उपयोगकर्ताओं को दिखाते हैं वह अभी तक एक और संस्करण है। इसे उत्पाद संस्करण या कुछ और कहें। यह उपरोक्त में से किसी भी से अलग हो सकता है, उदाहरण के लिए व्यावसायिक उद्देश्य। यदि आप कुछ .NET अंतर्निहित समर्थन का उपयोग करना चाहते हैं तो AssemblyInformationalVersionAttribute देखें।

साधारण मामलों के लिए, आप फ़ाइल संस्करण के रूप में फ़ाइल संस्करण का उपयोग कर सकते हैं। लेकिन संस्करण प्रकाशित करना मेरे लिए एक अच्छा विचार नहीं है।

+0

हाय दुदु, स्पष्ट स्पष्टीकरण के लिए धन्यवाद। यह अच्छी तरह से चीजों को स्पष्ट किया गया है! – MrGreggles

+1

क्या उन्हें स्वचालित रूप से मिलान करने का कोई तरीका है? –

संबंधित मुद्दे