2013-03-03 9 views
7

मुझे लगता है कि कभी-कभी मुझे एक परियोजना में एकाधिक नामस्थान रखने की आवश्यकता होती है जो मैं काम कर रहा हूं - क्या ऐसी कोई समस्या है जो एक ही प्रोजेक्ट में एकाधिक नामस्थान होने से उत्पन्न हो सकती है?
वैकल्पिक रूप से समाधान में कई परियोजनाएं (प्रति नामस्थान) विकल्प है।एक ही प्रोजेक्ट में एकाधिक नामस्थान

+1

"वैकल्पिक रूप से समाधान में कई परियोजनाएं हैं।" - यह आमतौर पर एक बेहतर तरीका है। –

+0

@ मिच व्हाटैट यह अधिक "व्यवस्थित" दृष्टिकोण प्रतीत होता है, लेकिन यह वास्तव में मेरे समाधान को अव्यवस्थित करता है। एक बड़ी समस्या यह है कि यह संकलन पर कई फाइलें उत्पन्न करता है। – Acidic

+0

लेकिन यह एक अलग समाधान के साथ एक पूरी तरह से अलग समस्या है। –

उत्तर

7

हाँ, यह ठीक है। अक्सर मेरे नामस्थान परियोजना की फ़ोल्डर संरचना से संरेखित होते हैं। तो पूरे प्रोजेक्ट के लिए शीर्ष-स्तरीय नेमस्पेस समान हो सकता है, लेकिन कई उप-नामस्थान होंगे।

नामस्थान के उद्देश्य (1) संगठन और (2) नामकरण टकराव से परहेज करते हैं, जरूरी नहीं कि उस क्रम में। जबकि, कई परियोजनाओं में चीजों को अलग करना अधिक है क्योंकि आप कई बाइनरी चाहते हैं या आप एकाधिक समाधानों के बीच कोड साझा करना चाहते हैं। ये कुछ हद तक ऑर्थोगोनल चिंताओं हैं।

+1

इसके अलावा, दृश्य स्टूडियो स्वचालित रूप से इस संरचना का उपयोग कर नई .cs फ़ाइलों में नामस्थान बनाता है। –

1

हां कई नाम एक ही नामस्थान में हैं। एक परियोजना में कई नामस्थान पूरी तरह से ठीक है। यह कॉस्मेटिक है।

1

इस प्रश्न का उत्तर, सर्वोत्तम प्रथाओं के बिना, यह है कि एक परियोजना में एकाधिक नामस्थानों का उपयोग करने से कोई तकनीकी समस्या नहीं होगी।

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

प्रति समस्या नहीं है, लेकिन आपको प्रोजेक्ट में जोड़े गए प्रत्येक नई सी # फ़ाइल को मैन्युअल रूप से जांचना होगा और तदनुसार नामस्थान बदलना होगा यदि वह विशेष फ़ाइल प्रोजेक्ट के लिए डिफ़ॉल्ट नेमस्पेस का उपयोग नहीं करेगी।

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