2012-02-16 15 views
10

नोट: यह सवाल How to prevent the copy of XML documentation files in a release mode build? के समान है, लेकिन यह एक ही नहीं है और वहाँ जवाब लागू नहीं है। कारण जानने के लिए आगे पढ़ें। (यदि आप असहमत हैं, तो कृपया टिप्पणी में या बातचीत में पूछें, मुझे elabroate खुशी होगी)।वेब स्टूडियो में एक्सएमएल दस्तावेज फाइलों को "प्रकाशन" से विजुअल स्टूडियो को कैसे रोकें?


मैं एक पुस्तकालय परियोजना (MyLibrary) और एक ASP.NET वेब अनुप्रयोग परियोजना इस पुस्तकालय (दोनों एक ही समाधान में हैं) को संदर्भित किया है। लाइब्रेरी प्रोजेक्ट के लिए "एक्सएमएल दस्तावेज फाइल जेनरेट करें" की जांच की गई है, क्योंकि मैं विकास के दौरान उन अच्छी इंटेलिसेन्स सुविधाओं को देखना चाहता हूं।

जब मैं (परियोजना/प्रकाशित करें ... पर संदर्भ मेनू) वेब अनुप्रयोग प्रकाशित करते हैं, यह प्रतियां केवल कुछ करने के लिए आवेदन (कोई स्रोत कोड, आदि) को चलाने के लिए आवश्यक फ़ाइलें निर्देशिका प्रकाशित करते हैं। अच्छी बात है। दुर्भाग्य से, यह लाइब्रेरी की XML दस्तावेज़ फ़ाइल की प्रतिलिपि बनाता है। चूंकि मैं अपने पुस्तकालय के दस्तावेज को एक व्यापार रहस्य मानता हूं, इसलिए मैं नहीं चाहता कि यह ग्राहक के सर्वर पर समाप्त हो। इस प्रकार, हमें इसे तैनात करने से पहले प्रकाशित फ़ाइल से मैन्युअल रूप से इस फ़ाइल को निकालना याद रखना होगा।

वहाँ के लिए एक रास्ता इस फाइल को कॉपी जब ASP.NET परियोजना प्रकाशित करने से दृश्य स्टूडियो को रोकने के है, लेकिन जब विकासशील अभी भी एक्सएमएल प्रलेखन IntelliSense के लाभ को बनाए रखने?

उत्तर

10

मान लें कि आप विकास और रिलीज (और जो कुछ भी) के लिए अलग-अलग कॉन्फ़िगरेशन का उपयोग कर रहे हैं, एक विशिष्ट कॉन्फ़िगरेशन के लिए 'एक्सएमएल दस्तावेज फ़ाइल'/बंद पीढ़ी को अनचेक करने से इसे आवश्यकतानुसार तैनात किया जा सकता है। एक और विकल्प फाइल/एस को हटाने के लिए एक पोस्ट-बिल्ड एक्शन होगा।

उन दो विकल्पों में से पूर्व अधिक सुरुचिपूर्ण लग रहा है।

+0

यह आदर्श नहीं है, क्योंकि (ए) आपको डीबग/रिलीज के लिए अलग-अलग मान को सेट करने के लिए vbproj फ़ाइल को मैन्युअल रूप से संपादित करने की आवश्यकता है और (बी) "रिलीज" सेट होने पर कोडिंग करते समय आपको कुछ इंटेलिजेंस फीचर्स याद आती हैं, लेकिन ऐसा लगता है कि ऐसा लगता है अब तक का सबसे अच्छा विकल्प। – Heinzi

+0

@ हेनज़ी मुझे विश्वास नहीं है कि आप यूआई के भीतर प्रति कॉन्फ़िगरेशन नहीं कर सकते हैं, लेकिन आपने मुझे सैनिटी चेक करने की सोच दी है। ... स्वच्छता की जांच की गई: यह _can_ UI में प्रति कॉन्फ़िगरेशन निर्दिष्ट किया जाना चाहिए। –

+1

मैंने अभी भी जांच की है: आप इसे सी # परियोजनाओं के लिए कर सकते हैं लेकिन वीबी परियोजनाओं के लिए नहीं। वीबी परियोजनाओं में, सेटिंग * सभी * कॉन्फ़िगरेशन के लिए उपयोग की जाती है (जब तक आप इसे vbproj फ़ाइल में मैन्युअल रूप से ओवरराइड नहीं करते हैं - तब यूआई में चेकबॉक्स "अनिश्चित स्थिति" दिखाता है)। – Heinzi

4

वहाँ इस फाइल जब ASP.NET प्रोजेक्ट का प्रकाशन को कॉपी से दृश्य स्टूडियो को रोकने के लिए एक रास्ता है,

रिलीज मोड में बारी एक्सएमएल डॉक्स बंद

लेकिन अभी भी एक्सएमएल प्रलेखन IntelliSense के विकास के लाभ को बनाए रखने के लाभ को बनाए रखें?

बारी एक्सएमएल डॉक्स /डीबग मोड में बंद पर। इंटेलिसेंस किसी भी तरह से काम करेगा।

+0

मैं अपने अंतिम वाक्य पर असहमत: विधि सारांश * * नहीं दिखाया कर रहे हैं एक्सएमएल डॉक्स पुस्तकालय के लिए बंद कर दिया है (बस इसे परीक्षण किया: बंद, स्वच्छ परियोजना की बारी है, कोड लिखने)। – Heinzi

1

मैं एक्सप्रेस में यह कर रही है, लेकिन यह मेरे लिए काम करने के लिए लग रहा था ...

  1. गुण के लिए चला गया (परियोजना के लिए)
  2. क्लिक किया प्रकाशित करें टैब
  3. क्लिक करें आवेदन फ़ाइलें बटन
  4. दिखाएँ सभी फ़ाइलें चेक किए गए
  5. सेट एक्सएमएल फ़ाइल शामिल न करने के लिए

जैसा कि मैंने कहा, एक्सप्रेस 2010 का उपयोग करके, लेकिन यह काम किया (यह फ़ाइल को प्रकाशित स्थान पर कॉपी नहीं किया गया था)।

+0

धन्यवाद, लेकिन यह केवल विंडोज अनुप्रयोग परियोजनाओं के लिए काम करता है, न कि वेब अनुप्रयोगों के लिए। उनके पास एक अलग प्रकाशन प्रक्रिया है और जहां तक ​​मैं देख सकता हूं, आप वहां अलग-अलग फाइलों को कॉन्फ़िगर नहीं कर सकते हैं। – Heinzi

+1

आह, उस भाग को याद किया। माफ़ कीजिये। – APrough

0

आप दृश्य स्टूडियो जो यहां से डाउनलोड किया जा सकता पर ऐड-ऑन वेब तैनाती परियोजना जोड़ कर ऐसा कर सकते हैं: http://www.microsoft.com/download/en/details.aspx?id=19995 और बाहर करने के लिए जो कुछ भी फ़ाइलें/फ़ोल्डर आप की जरूरत कृपया चरणों पाया here

2

एक और उपाय है का पालन करें। बस शुरुआत में अपनी सीस्पोज़ फ़ाइल में निम्नलिखित शामिल करें:

<AllowedReferenceRelatedFileExtensions>.pdb</AllowedReferenceRelatedFileExtensions> 

यही है। एक्सएमएल फाइलें अब प्रकाशित नहीं होंगी। बेशक, आप इसे ठोस विन्यास पर सशर्त बना सकते हैं।

+0

नोट: यह परिवर्तन आउटपुट होने से संदर्भित असेंबली (उसी समाधान में) से .config फ़ाइलों को रोक देगा। – Lyra

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