Skutočný účinok vyhlásenia Imports vo VB.NET je často zdrojom zmätku pre ľudí, ktorí sa učia jazyk. A interakcia s VB.NET References spôsobuje ešte viac zmätku. Toto objasníme tento rýchly tip.
Tu je stručné zhrnutie celého príbehu. Potom sa pozrieme na podrobnosti.
Odkaz na menný priestor VB.NET je požiadavka a pred použitím objektov v mennom priestore sa musí do projektu pridať. (Súbor referenčných údajov sa automaticky pridá pre rôzne šablóny vo Visual Studio alebo VB.NET Express. Kliknutím na položku Zobraziť všetky súbory v aplikácii Solution Explorer zobrazíte, čo to je.) Vyhlásenie Imports však nie je povinné. Namiesto toho je to jednoducho výhoda kódovania, ktorá umožňuje použitie kratších názvov.
Teraz sa pozrime na skutočný príklad. Na ilustráciu tohto nápadu použijeme systém. Dátový priestor mien - ktorý poskytuje technológiu údajov ADO.NET.
Systém. Dáta sa do aplikácií Windows pridávajú ako referencia v predvolenom nastavení pomocou šablóny aplikácie Windows Forms VB.NET.
Pridanie priestoru názvov do zbierky odkazov
Pridanie nového priestoru názvov do zbierky Referencie v projekte sprístupní aj objekty v tomto priestore názvov. Najviditeľnejším efektom je, že Visual Studio „Intellisense“ vám pomôže nájsť objekty v rozbaľovacích ponukách.
Ak sa pokúsite použiť objekt v programe bez referencie, riadok kódu vygeneruje chybu.
Na druhej strane, vyhlásenie o dovoze sa nikdy nevyžaduje. Jediné, čo robí, je umožniť rozlíšenie názvu bez úplnej kvalifikácie. Inými slovami (dôraz sa kladie na zvýraznenie rozdielov).
dovoz Systém. údaje
Formulár verejnej triedy1
Zdedí systém. Windows. Formy. formulár
Súkromný pod Form1_Load (...
Dim Test As OLEDB. OleDbCommand
End Sub
Koncová trieda
a
dovoz Systém. Data. OLEDB
Formulár verejnej triedy1
Zdedí systém. Windows. Formy. formulár
Súkromný pod Form1_Load (...
Dim Test As OleDbCommand
End Sub
Koncová trieda
sú ekvivalentné. Ale ...
dovoz Systém. údaje
Formulár verejnej triedy1
Zdedí systém. Windows. Formy. formulár
Súkromný pod Form1_Load (...
Dim Test As OleDbCommand
End Sub
Koncová trieda
má za následok chybu syntaxe („Typ„ OleDbCommand “nie je definovaný“) z dôvodu Importuje menný priestor kvalifikačný systém. Dáta neposkytujú dostatok informácií na nájdenie objektu OleDbCommand.
Aj keď kvalifikácia mien vo vašom zdrojový kód programu môžu byť koordinované na akejkoľvek úrovni v „zjavnej“ hierarchii, stále musíte vybrať ten správny menný priestor, na ktorý sa chcete odvolávať. Napríklad .NET poskytuje systém. Webový menný priestor a celý zoznam ďalších, ktoré začínajú systémom. Web ...
Poznámka
Pre referencie existujú dva úplne odlišné súbory DLL. Musíte si vybrať ten správny, pretože služba WebService nie je metódou v jednom z nich.