Operador :: (referencia de C#)
Use el calificador de alias de espacio de nombres :: para acceder a un miembro del espacio de nombres con alias. Solo puede usar el calificador :: entre dos identificadores. El identificador de la izquierda puede ser cualquiera de los siguientes alias:
Un alias de espacio de nombres creado con una directiva de alias using:
using forwinforms = System.Drawing; using forwpf = System.Windows; public class Converters { public static forwpf::Point Convert(forwinforms::Point point) => new forwpf::Point(point.X, point.Y); }Un alias externo.
El alias
global, que es el alias del espacio de nombres global. El espacio de nombres global es el espacio de nombres que contiene los espacios de nombres y los tipos que no se declaran dentro de un espacio de nombres con nombre. Cuando se usa con el calificador::, el aliasglobalsiempre hace referencia al espacio de nombres global, incluso si está el alias del espacio de nombresglobaldefinido por el usuario.En el ejemplo siguiente se usa el alias
globalpara tener acceso al espacio de nombres System de .NET, que es miembro del espacio de nombres global. Sin el aliasglobal, se tendría acceso al espacio de nombresSystemdefinido por el usuario, que es miembro del espacio de nombresMyCompany.MyProduct:namespace MyCompany.MyProduct.System { class Program { static void Main() => global::System.Console.WriteLine("Using global alias"); } class Console { string Suggestion => "Consider renaming this class"; } }Nota
La palabra clave
globales el alias de espacio de nombres global solo cuando es el identificador izquierdo del calificador::.
También puede usar el token . para acceder a un miembro de un espacio de nombres con alias. Sin embargo, el operador . también se usa para acceder a un miembro del tipo. El calificador :: garantiza que el identificador de la izquierda siempre hace referencia a un alias de espacio de nombres, aunque exista un tipo o un espacio de nombres con el mismo nombre.
Especificación del lenguaje C#
Para más información, consulte la sección sobre calificadores de alias de espacio de nombres de la Especificación del lenguaje C#.