2010-12-30 13 views
5

मैं विभिन्न dll का है कि मैं सीधे एक ASP.NET वेबसाइट मैं दृश्य स्टूडियो 2010.वेब अनुप्रयोग प्रकाशित करते समय आप एक गैर-संदर्भित डीएलएल कैसे शामिल करते हैं?

में "पैकेज/वेब प्रकाशित करें" सुविधा के माध्यम से प्रकाशित करने के लिए प्रयास कर रहा हूँ में नहीं संदर्भित कर रहा हूँ मैं प्रकाशन सुविधा कैसे बता सकता है कि इन निश्चित फ़ाइलों को शामिल करने की आवश्यकता है?

ध्यान दें कि मैं इन डीएलएल का सीधे संदर्भ नहीं लेना चाहता हूं (समाधान विशेष रूप से इस तरह से स्थापित किया गया है ताकि इन विशिष्ट डीएल का सीधे संदर्भ नहीं दिया जा सके)।

मुझे <ExcludeFilesFromDeployment/> मिला है लेकिन मुझे विशेष रूप से फ़ाइलों को शामिल करने का कोई तरीका नहीं मिल रहा है।

+0

आप क्यों नहीं बस DLLs को संदर्भित करने के लिए विरोध कर रहे हैं ? – Jacob

+1

यदि डीएलएल का संदर्भ दिया गया है, तो प्रोग्रामर उन कक्षाओं का उपयोग उन डीएलएस में सीधे कर सकता है, बजाय मैंने स्थापित अमूर्त परतों का उपयोग करने के बजाय। अधिक ठोस रूप से, मेरे पास एक परियोजना (जिसे संदर्भित किया गया है) में इंटरफेस है, और एक अन्य परियोजना में ठोस कार्यान्वयन (जिसे संदर्भित नहीं किया गया है)। यह सब एक डीआई कंटेनर के माध्यम से एक साथ लगाया गया है, और एक सरल विन्यास फ़ाइल प्रविष्टि सबकुछ ऊपर हुक। मैं नहीं चाहता कि प्रोग्रामर इस आधारभूत संरचना को छोड़ दे। –

+1

हां ओडेड, एक परिपूर्ण दुनिया में, इन उल्लंघनों को nDepend द्वारा उठाया जाएगा। ऐसा नहीं है कि मैं उन डेवलपर्स पर भरोसा नहीं करता (जिनमें से मैं बहुत अधिक शामिल हूं), यह है कि मैं उन्हें "सफलता का गड्ढा" में ले जाना चाहता हूं। अगर मैं परियोजना संदर्भों को सरल बना सकता हूं ताकि टीम आसानी से परेशानी में न हो, तो यह एक जीत है। कई प्लेटफार्मों में कई परियोजनाओं में विभिन्न अनुभव स्तरों वाली एक टीम पर, किसी भी जीत की सराहना की जाती है। –

उत्तर

4

आप प्रकाशित करें आप MSBuild फ़ाइल में "FilesForPackagingFromProject" तत्वों इस्तेमाल कर सकते हैं विधि के माध्यम से फ़ाइलों को शामिल करना चाहते हैं

उपयोगी लिंक (* proj।): http://sedodream.com/2010/05/01/WebDeploymentToolMSDeployBuildPackageIncludingExtraFilesOrExcludingSpecificFiles.aspx

+0

धन्यवाद - यह वही है जो मैं ढूंढ रहा था! –

1

यह केवल आपकी वेबसाइट में फ़ोल्डर से प्रकाशित होगा। मैंने हमेशा वेबसाइटों को संदर्भित किया है, इसलिए जब मैंने इसे बनाया तो वे साइट पर स्थानीय थे और बाकी सब कुछ के साथ प्रकाशित किए जाएंगे।

+0

एक दृश्य स्टूडियो प्लगइन है जो आप चाहते हैं कि करेंगे। http://www.codedigest.com/Articles/VisualStudio/126_Web_Deployment_Project_for_Visual_Studio_2005_and_2008.aspx – phillip

+0

बनाम 2010 संस्करण भी: http://blogs.msdn.com/b/webdevtools/archive/2010/05/26/visual-studio-2010 -वेब-परिनियोजन-परियोजनाओं-आरटीडब्ल्यू-उपलब्ध- now.aspx – phillip

+0

धन्यवाद फिलिप - मैं उन लिंक को देखूंगा। –

4

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

+0

यह निश्चित रूप से एक विकल्प है, भले ही यह एक हैक का थोड़ा सा हो। धन्यवाद! –

+1

हाँ। जब हम एकता का इस्तेमाल करते थे, तो हम आपके द्वारा किए गए कार्यों के समान समाधान करते थे, और मुझे आपका दर्द महसूस होता है। हमने डीएल को बिन में धक्का देने के लिए पोस्ट बिल्ड इवेंट्स का इस्तेमाल किया, लेकिन जब हमें प्रकाशन करना पड़ा तो उन्हें मैन्युअल रूप से पकड़ने के लिए याद रखना पड़ा। – Josh

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