個人的なメモ

Tomohiro Suzuki @hiro128_777 のブログです。Xamarin に関する事を中心に書いています。 Microsoft MVP for Development Technologies 2017- 本ブログと所属組織の公式見解は関係ございません。

C# 10 の新機能 - global using

C# 10 の新機能の情報の目次は以下をご覧ください。
hiro128.hatenablog.jp 
 

global using

任意のソース ファイルに global using ディレクティブを追加するか、プロジェクトファイル(*.csproj)に Using Itemを追加することですべてのソースファイルで使用したい名前空間を、各ソースファイルで宣言されているかのように指定することができます。
なお、static 修飾子やエイリアスと一緒に使うことができます。
 

導入の意図

共通の using 宣言を1箇所に集約できるので多くの using 行が不要になり、ソースコードからロジック以外の要素を排除できます。
一言で言えば「ソースコードを簡潔にするための機能」です。
 

任意のソースファイルに global using ディレクティブを追加
global using System.Linq; 
global using static System.Console; // static 併用
global using E = System.Environment; // エイリアス併用

 

プロジェクトファイル(*.csproj)に Using Itemを追加
<ItemGroup>
  <Using Include="System.Linq" />
  <Using Include="System.Console" Static="True" /> 
  <Using Include="System.Environment" Alias="E" />
</ItemGroup>

 
公式情報:
Global usings
global 修飾子