Как использовать классификатор псевдонима :: Namespace в C #

Опубликовано: 2 Февраля, 2022

Квалификатор псевдонима пространства имен ( ::) позволяет использовать псевдоним вместо более длинного пространства имен и позволяет избежать неоднозначных определений классов. Он всегда располагается между двумя идентификаторами. Квалификатор выглядит как два двоеточия (: :) с псевдонимом и именем класса. Он может быть глобальным. Таким образом, поиск выполняется не в пространстве имен с псевдонимом, а в глобальном пространстве имен.

Синтаксис:

 псевдоним :: имя-класса;

Example:

// C# program to illustrate how to use
// the :: Namespace Alias Qualifier
using System;
  
// creating aliased name
using first = firstnamespace;
using sec = secondnamespace;
  
namespace Geeks {
  
class GFG {
  
    // Main Method
    static void Main()
    {
  
        // use of Namespace alias qualifier(::)
        first::GFG1 obj1 = new first::GFG1(); 
        obj1.display();
    }
}
}
  
// Both namespaces have a 
// class named GFG1
namespace firstnamespace {
  
class GFG1 {
  
    public void display()
    {
        Console.WriteLine("It is the first namespace.");
    }
}
}
  
namespace secondnamespace {
  
class GFG1 {
  
    public void display()
    {
        Console.WriteLine("It is the second namespace.");
    }
}
}
Output:
It is the first namespace.

Примечание . Квалификатор псевдонима пространства имен :: используется только для пространств имен или псевдонимов и не может использоваться для подклассов.

Example:

System.Collections::lists obj= new System.Collections.lists() // illegal
aliasname = System.Collections;
aliasname::lists obj = new aliasname::lists(); // Legal
// C# program to illustrate how to use
// the :: Namespace Alias Qualifier
using aliasname = System.Collections;
  
namespace Geeks {
  
class GFG {
  
    // Main Method
    static void Main()
    {
        // using :: Namespace Alias Qualifier
        aliasname::Hashtable obj = new aliasname::Hashtable();
  
        // Add items to the table.
        obj.Add("ASCII value of A is:", "65");
        obj.Add("ASCII value of B is:", "66");
  
        // displaying the result
        foreach(string i in obj.Keys)
        {
            System.Console.WriteLine(i + " " + obj[i]);
        }
    }
}
}
Output:
ASCII value of A is: 65
ASCII value of B is: 66