エイリアス化された名前空間のメンバーにアクセスするには、名前空間エイリアス修飾子 :: を使用します。
::修飾子は、2 つの識別子の間でのみ使用できます。 左側の識別子には、名前空間エイリアス、extern エイリアス、または global エイリアスのいずれかを指定できます。
C# 言語リファレンスには、C# 言語の最新リリース バージョンが記載されています。 また、今後の言語リリースのパブリック プレビューの機能に関する初期ドキュメントも含まれています。
このドキュメントでは、言語の最後の 3 つのバージョンまたは現在のパブリック プレビューで最初に導入された機能を特定します。
ヒント
C# で機能が初めて導入された時期を確認するには、 C# 言語バージョン履歴に関する記事を参照してください。
例えば次が挙げられます。
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); }globalエイリアス。グローバル名前空間のエイリアスです。 グローバル名前空間は、名前付き名前空間内で宣言されていない名前空間と型を含む名前空間です。::修飾子と共に使用すると、ユーザー定義のglobal名前空間エイリアスがある場合でも、globalエイリアスは常にグローバル名前空間を参照します。次の例では、
globalエイリアスを使用して、グローバル名前空間のメンバーである .NET System 名前空間にアクセスします。globalエイリアスがないと、System名前空間のメンバーであるユーザー定義のMyCompany.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"; } }注
globalキーワードは、::修飾子の左側の識別子である場合にのみ、グローバル名前空間のエイリアスです。
. トークンを使用して、エイリアス化された名前空間のメンバーにアクセスすることもできます。 ただし、 . トークンは、型メンバーへのアクセスにも使用されます。
::修飾子は、同じ名前の型または名前空間が存在する場合でも、左側の識別子が常に名前空間のエイリアスを参照するようにします。
C# 言語仕様
詳細については、C# 言語仕様の名前空間エイリアス修飾子に関するセクションを参照してください。
こちらも参照ください
.NET