VB.NET में Imports स्टेटमेंट का वास्तविक प्रभाव अक्सर भाषा सीखने वाले लोगों के लिए भ्रम का एक स्रोत है। और VB.NET सन्दर्भों के साथ पारस्परिक क्रिया और भी अधिक भ्रम पैदा करती है। हम इस क्विक टिप में स्पष्ट करने जा रहे हैं।
यहाँ पूरी कहानी का एक संक्षिप्त सारांश है। फिर हम विवरण पर जाएंगे।
VB.NET नामस्थान का एक संदर्भ एक आवश्यकता है और किसी परियोजना में जोड़ा जाना चाहिए इससे पहले कि नामस्थान में वस्तुओं का उपयोग किया जा सके। (संदर्भ का एक सेट स्वचालित रूप से के लिए जोड़ा जाता है विभिन्न टेम्पलेट्स दृश्य स्टूडियो या VB.NET एक्सप्रेस में। समाधान एक्सप्लोरर में "सभी फाइलें दिखाएं" पर क्लिक करके देखें कि वे क्या हैं।) लेकिन आयात विवरण की आवश्यकता नहीं है। इसके बजाय, यह केवल एक कोडिंग सुविधा है जो छोटे नामों का उपयोग करने की अनुमति देती है।
अब आइए एक वास्तविक उदाहरण देखें। इस विचार को समझने के लिए, हम सिस्टम का उपयोग करने जा रहे हैं। डेटा नेमस्पेस - जो ADO.NET डेटा तकनीक प्रदान करता है।
प्रणाली। डेटा को VB.NET विंडोज फॉर्म्स एप्लिकेशन टेम्पलेट का उपयोग करके डिफ़ॉल्ट रूप से संदर्भ के रूप में विंडोज एप्लिकेशन में जोड़ा जाता है।
सन्दर्भ संग्रह में एक नाम स्थान जोड़ना
किसी प्रोजेक्ट में सन्दर्भ संग्रह में एक नया नामस्थान जोड़ने से उस नामस्थान में ऑब्जेक्ट्स प्रोजेक्ट के लिए भी उपलब्ध हो जाते हैं। इसका सबसे दृश्य प्रभाव यह है कि विज़ुअल स्टूडियो "इन्टेलिसेंस" आपको पॉपअप मेनू बॉक्स में ऑब्जेक्ट खोजने में मदद करेगा।
यदि आप संदर्भ के बिना अपने कार्यक्रम में किसी ऑब्जेक्ट का उपयोग करने का प्रयास करते हैं, तो कोड की लाइन एक त्रुटि उत्पन्न करती है।
दूसरी ओर, इम्पोर्ट स्टेटमेंट की कभी आवश्यकता नहीं होती है। केवल एक चीज यह करती है कि नाम को पूरी तरह से योग्य होने के बिना हल किया जा सकता है। दूसरे शब्दों में (अंतर दिखाने के लिए जोर दिया गया)।
आयात प्रणाली। डेटा
पब्लिक क्लास फॉर्म 1
इन्हेरिट्स सिस्टम। खिड़कियाँ। फार्म। प्रपत्र
निजी उप Form1_Load (...
मंद परीक्षण के रूप में OleDb। OleDbCommand
अंत उप
एंड क्लास
तथा
आयात प्रणाली। डेटा। OleDb
पब्लिक क्लास फॉर्म 1
इन्हेरिट्स सिस्टम। खिड़कियाँ। फार्म। प्रपत्र
निजी उप Form1_Load (...
मंद परीक्षण के रूप में OleDbCommand
अंत उप
एंड क्लास
दोनों बराबर हैं। परंतु ...
आयात प्रणाली। डेटा
पब्लिक क्लास फॉर्म 1
इन्हेरिट्स सिस्टम। खिड़कियाँ। फार्म। प्रपत्र
निजी उप Form1_Load (...
मंद परीक्षण के रूप में OleDbCommand
अंत उप
एंड क्लास
सिंटैक्स त्रुटि के कारण ("टाइप करें ओलेडबॉम्बैंड 'परिभाषित नहीं है") के कारण आयात नामस्थान योग्यता प्रणाली। डेटा ऑब्जेक्ट OleDbCommand को खोजने के लिए पर्याप्त जानकारी प्रदान नहीं करता है।
यद्यपि आपके नाम में योग्यता कार्यक्रम स्रोत कोड 'स्पष्ट' पदानुक्रम में किसी भी स्तर पर समन्वित किया जा सकता है, आपको अभी भी संदर्भ के लिए सही नाम स्थान चुनना है। उदाहरण के लिए, .NET एक सिस्टम प्रदान करता है। वेब नेमस्पेस और सिस्टम से शुरू होने वाले अन्य लोगों की पूरी सूची। वेब ...
ध्यान दें
संदर्भों के लिए दो पूरी तरह से अलग DLL फाइलें हैं। आपको सही एक को चुनना होगा क्योंकि WebService उनमें से एक में एक विधि नहीं है।