Direttiva using (Riferimenti per C#)
La direttiva using consente di effettuare le due seguenti operazioni:
Per consentire l'utilizzo dei tipi in uno spazio dei nomi in modo da evitare di dover qualificare l'utilizzo di un tipo in tale spazio dei nomi:
using System.Text;
Creare un alias per uno spazio dei nomi o un tipo.Questa operazione è denominata direttiva alias using.
using Project = PC.MyCompany.Project;
La parola chiave using viene anche utilizzata per creare istruzioni using, che assicurano la gestione corretta di oggetti IDisposable, quali file e tipi di carattere.Per ulteriori informazioni, vedere Istruzione using.
Note
L'ambito di una direttiva using è limitato al file nel quale è contenuto.
Creare un alias using per rendere più semplice la qualificazione di un identificatore in uno spazio dei nomi o in un tipo.La parte destra di una direttiva alias using deve sempre essere un tipo completo indipendentemente delle direttive using precedenti.
Creare una direttiva using per utilizzare i tipi in uno spazio di nomi , senza dover qualificare lo spazio dei nomi.Una direttiva using non fornisce l'accesso a tutti gli spazi dei nomi annidati nello spazio dei nomi specificato.
Gli spazi dei nomi possono essere di due tipi: definito dall'utente e definito dal sistema.Gli spazi dei nomi definiti dall'utente sono definiti a livello di codice.Per un elenco degli spazi dei nomi definiti dal sistema, vedere libreria di classi .NET Framework..
Per esempi sui riferimenti ai metodi presenti in altri assembly, vedere Creazione e utilizzo di DLL del linguaggio C#.
Esempio 1
Descrizione
Nell'esempio riportato di seguito viene illustrato come definire e utilizzare un alias using per uno spazio dei nomi:
Codice
namespace PC
{
// Define an alias for the nested namespace.
using Project = PC.MyCompany.Project;
class A
{
void M()
{
// Use the alias
Project.MyClass mc = new Project.MyClass();
}
}
namespace MyCompany
{
namespace Project
{
public class MyClass { }
}
}
}
Commenti
Una direttiva alias using non può disporre di un tipo generico aperto nella parte destra.Ad esempio, non è possibile creare un alias using per List<T>, ma è possibile crearne uno per List<int>.
Esempio 2
Descrizione
Nell'esempio riportato di seguito viene illustrato come definire una direttiva using e un alias using per una classe:
Codice
using System;
// Using alias directive for a class.
using AliasToMyClass = NameSpace1.MyClass;
// Using alias directive for a generic class.
using UsingAlias = NameSpace2.MyClass<int>;
namespace NameSpace1
{
public class MyClass
{
public override string ToString()
{
return "You are in NameSpace1.MyClass.";
}
}
}
namespace NameSpace2
{
class MyClass<T>
{
public override string ToString()
{
return "You are in NameSpace2.MyClass.";
}
}
}
namespace NameSpace3
{
// Using directive:
using NameSpace1;
// Using directive:
using NameSpace2;
class MainClass
{
static void Main()
{
AliasToMyClass instance1 = new AliasToMyClass();
Console.WriteLine(instance1);
UsingAlias instance2 = new UsingAlias();
Console.WriteLine(instance2);
}
}
}
// Output:
// You are in NameSpace1.MyClass.
// You are in NameSpace2.MyClass.
Specifiche del linguaggio C#
Per ulteriori informazioni, vedere la Specifiche del linguaggio C#. La specifica del linguaggio è la fonte ufficiale per la sintassi e l'utilizzo di C#.
Vedere anche
Riferimenti
Parole chiave per spazi dei nomi (Riferimenti per C#)
Spazi dei nomi (Guida per programmatori C#)
Istruzione using (Riferimenti per C#)