2012-03-29 13 views
10

चाहे मेरी मशीन की रूट वेब कॉन्फ़िगरेशन (विंडोज़/माइक्रोसॉफ्ट .NET/... में) में system.web/pages/namespaces/add तत्व शामिल हैं, फिर भी यह मांग की जाती है कि मैं प्रत्येक aspx.cs CodeBehind फ़ाइल के ऊपर विवरणों का उपयोग करना शामिल करता हूं। क्यूं कर? इसे संकलित नहीं करना चाहिए और शिकायत नहीं करना चाहिए कि यह समझ में नहीं आता कि कोई पृष्ठ क्या है? आखिरकार, <add namespace="System.Web" /> रूट web.config में मौजूद है!Web.config के system.web/पेज/नेमस्पेस टैग का बिंदु क्या है?

+0

क्या यह झूठी शिकायतों के साथ संकलित होगा, या वास्तव में संकलित नहीं होगा? वीएस हमेशा वेब कॉन्फिग में जोड़े गए नियंत्रण नामस्थानों के साथ संघर्ष कर रहा है, हालांकि ज्यादातर मामलों में सबकुछ बढ़ता है और ठीक चलता है ... –

+0

यह संकलित नहीं करता है। एक सिस्टम में जहां कोड कोड कोडबैंड फ़ाइल में रहता है, वास्तव में इस विशेष वेब कॉन्फ़िगरेशन अनुभाग में शून्य मान है। – JonathanWolfson

उत्तर

9

system.web/pages/namespaces/add तत्व .ASPX फ़ाइलें, (.ASPX.CS सहित) अभी भी उचित using क्या करने की जरूरत के रूप में वहाँ है संकलन करने से पहले स्रोत का कोई पूर्व प्रसंस्करण सामान्य .CS फ़ाइलों के लिए है। तो .ASPX.CS मान्य सीएस फ़ाइल होना चाहिए जिसमें सभी using Namespace घोषणाएं शामिल हैं।

+0

हाय, क्या आप 'प्री-प्रोसेसिंग' के बारे में अधिक समझा सकते हैं। 'प्री-प्रोसेसिंग' के दौरान .aspx फ़ाइलों ने 'system.web/pages/namespaces' (या [@import] निर्देश) के साथ कैसे सहभागिता की है। धन्यवाद। – pinopino

+0

@ पिनोपिनो - यदि आपके पास कोई प्रश्न है तो कृपया एक नया पूछें (और यदि आप स्पष्ट प्रश्न पूछ रहे हैं - वास्तव में मूल से लिंक करें)। मुझे पूरा यकीन नहीं है कि आप ASP.Net के संबंध में प्री-प्रोसेसिंग के बारे में क्या जानना चाहते हैं क्योंकि कोई भी नहीं है। आप [विकिपीडिया - प्रीप्रोसेसर] (http://en.wikipedia.org/wiki/Preprocessor_%28programming%29) से शुरू करना चाहते हैं। –

7

यह आपके एएसपीएक्स और एसीएक्स फाइलों में नामस्थान जोड़ता है ताकि आपको <%@ Import Namespace="MyNameSpace" %> कथन शामिल करने की आवश्यकता न हो।

documentation on MSDN से:

नामस्थान तत्व विधानसभा पूर्व संकलन के दौरान उपयोग करने के लिए आयात निर्देशों का एक संग्रह को परिभाषित करता है। यह विशेषता @ एएसपी.NET पृष्ठ पर आयात निर्देश से मेल खाती है। @ आयात निर्देश आपको नामस्थान निर्दिष्ट करने की अनुमति देता है जो स्वचालित रूप से किसी एप्लिकेशन के सभी पृष्ठों में आयात किए जाते हैं।

आपका कोडबेइंड इन web.config प्रविष्टियों से प्रभावित नहीं है।

+0

वीबीएनईटी के संबंध में मैंने यही पाया है। मेरी मशीनों में से एक में मैं निर्माण नहीं कर सकता और दूसरे पर मैं कर सकता हूं। तो, मैं स्क्रीन पर गया और देखता हूं: यह बना सकता है: "माइक्रोसॉफ्ट विजुअल बेसिक 2010 01019-532-2002102-70462"। यह नहीं कर सकता: "01019-532-2002102-70649"। आशा करता हूँ की ये काम करेगा। –

5

अन्य उत्तरों यहां इंगित करते हैं कि यह web.config सेटिंग केवल एएसपीएक्स पृष्ठों को प्रभावित करती है, न कि कोड-पीछे वाले पृष्ठों जैसे ASPX.CS. मैंने अभी एएसपी.NET वेबसाइट लक्ष्यीकरण .NET 4.0 में इसका परीक्षण किया है, और इसे सी # पृष्ठों के लिए सच माना है, लेकिन वीबी पृष्ठों के लिए यह सच नहीं है।

web.config सेटिंग्स में नामस्थान जोड़ने से प्रत्येक एएसपीएक्स.वीबी पृष्ठ के शीर्ष पर इसे सूचीबद्ध करने की आवश्यकता को हटा दिया गया।

मुझे किसी भी सिद्धांत में दिलचस्पी होगी कि यह क्यों हो सकता है। मैंने सोचा होगा कि यह फाइलों के पीछे एएसपीएक्स.सीएस और एएसपीएक्स.वीबी कोड दोनों के लिए काम करेगा।

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