2009-07-21 13 views
7

एएसपी.नेट में एक सुविधा है जो आपको web.config में निहित रूप से उपयोग किए जाने वाले नामस्थान घोषित करने की अनुमति देती है।app.config में .NET नेमस्पेस को उपनाम करना संभव है?

<configuration> 
<system.web> 
    <pages> 
    <namespaces> 
    <add namespace="System.Web.Mvc"/> 
    </namespaces> 
    </pages> 
</system.web> 
</configuration> 

मुझे पता है कि अगर अन्य .net वातावरण के लिए विन्यास (WinForms, सांत्वना क्षुधा की तरह, और विशेष रूप से, Silverlight एप्लिकेशन में) यह क्षमता होती है उत्सुक हूँ। यदि है, तो फॉलो अप प्रश्न यह है कि क्या हम कहा कॉन्फ़िगरेशन में नेमस्पेस को उपनाम करने में सक्षम हैं या नहीं।

कोड के इस बिट के अनुरूप है, लेकिन विन्यास के माध्यम से:

using MyNamespace = System.Web.Mvc; 

संपादित करें: मेरा इरादा इस तरह के silversprite जो Silverlight के लिए XNA के लिए एक समान एपीआई प्रदान करना है के रूप में परियोजनाओं को देख से आता है। यह आपको एक बार एक एक्सएनए गेम लिखने की अनुमति देता है, और उसके बाद इसे चांदी की रोशनी का उपयोग कर वेब पर तैनात करता है। एकमात्र समस्या यह है कि एपीआई के सभी सिल्वरप्रेट संस्करण एक अलग नेमस्पेस में हैं, इसलिए इसका उपयोग करने के लिए आपको उपयोग कथन के आस-पास एक ifdef का उपयोग करने की आवश्यकता है। यह शानदार होगा अगर कोई आसानी से सिल्वरप्र्राइट नेमस्पेस को उपनाम कर सके ताकि आपके कोड को प्लेटफॉर्म के बीच बदलना पड़े।

उत्तर

10

नहीं संकलन समय पर नामस्थान की आवश्यकता है। यह केवल परिदृश्य है जहां संकलन "देर से" (एएसपी.नेट में) किया जाता है जहां यह कोई समझ में आता है।

निष्पादन समय पर नामस्थान जोड़ने का क्या अर्थ होगा, यदि कोड पहले ही संकलित हो चुका है?

क्या आप वास्तव में प्रत्येक फ़ाइल के शीर्ष पर using निर्देशों का एक समूह लिखने से बचने के विकल्प के ठीक बाद हैं? यदि ऐसा है, और यदि C# समर्थित है, तो यह प्रोजेक्ट गुणों में होगा (जो संकलन के बारे में हैं, निष्पादन नहीं हैं)। हालांकि, सी # समर्थन नहीं करता है - केवल आयातित नामस्थान वर्तमान फ़ाइल में using निर्देशों द्वारा निर्दिष्ट हैं।

I सोचें वीबी के पास "डिफ़ॉल्ट नेमस्पेस" का विचार है लेकिन सी # निश्चित रूप से नहीं है। व्यक्तिगत रूप से मुझे लगता है कि यह एक अच्छी बात है। (आप this question को भी देखना चाहते हैं। मुझे नहीं पता कि यह प्रभावी रूप से डुप्लिकेट है या नहीं, क्योंकि आपका इरादा फिलहाल स्पष्ट नहीं है।)

+0

पर्याप्त मेला ... मैं बस उम्मीद कर रहा था कि मैं शायद सुविधा से परिचित नहीं है। लेकिन दुख की बात है कि आपने पुष्टि की है कि मुझे क्या सच माना जाता है :-) इसके अलावा, अगर कोई उत्सुक था तो मैंने ऊपर अपना इरादा स्पष्ट किया। धन्यवाद जॉन! –

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