コードの構文スタイル: 名前空間のインポート
各ソースコードファイルには、正しい名前空間インポート(C# の using ディレクティブ)が必要です。 インポートが不足している場合、コードはコンパイルされません。また、未使用のインポートがあると、長期的にコードの保守が難しくなる可能性があります。 さらに、名前空間のインポート方法にはさまざまなアプローチがあります。例えば、 using ディレクティブを追加したり、完全修飾型名を使用したり、 using ディレクティブをファイルの先頭や名前空間内に配置したりできます。
JetBrains Rider は、環境設定に従って名前空間のインポートのあらゆる側面を制御し、自動的に更新できる多くの機能を提供します。
名前空間のインポート設定を構成する
名前空間インポートの環境設定は、 レイヤー別設定の仕組みによって保存されます。 このメカニズムにより、さまざまなソリューションに対して異なる設定を維持したり、これらの設定をバージョン管理システム (VCS) で管理したり、チームメンバーと自動的に共有したりすることが可能になります。
Ctrl+Alt+S を押すか、メニューから (Windows および Linux) または (macOS) を選択し、左側の を選択します。
参照修飾および 'using' ディレクティブ グループの設定を使用して、ネームスペースのインポートスタイルを微調整します。
完全修飾参照を推奨する — インポートされたタイプに名前空間インポートディレクティブではなく完全修飾名を使用する場合は、このチェックボックスを選択します。
最も深いスコープに using ディレクティブを追加する — このチェックボックスを選択すると、名前空間インポートディレクティブはインポートされた型が使用される名前空間内に追加されます。選択しない場合、インポートディレクティブはファイルの先頭に追加されます。
'using' ディレクティブをソートするときは、'System.*' および 'Windows.*' の名前空間を最初に配置する — このチェックボックスを選択すると、
using System.Linq;などの 'using' ディレクティブは、ソート時に他の using ディレクティブの上に配置されます。 それ以外の場合、これらのディレクティブは他のディレクティブとアルファベット順にソートされます。ネストしたスコープで完全修飾名を使用することを推奨する — このチェックボックスが選択されている場合、インポートされた型の完全修飾名がネストされた型と名前空間で優先されます。
エイリアスディレクティブの使用を許可 — このチェックボックスを選択すると、完全修飾名前空間名ではなく、名前空間インポートディレクティブでエイリアスを使用できます。
'global ::' 接頭辞を許可する — このチェックボックスが選択されている場合、
global::接頭辞はglobal::System.Stringと同様に削除されません。 詳細については、「:: オペレーター - 名前空間のエイリアス演算子 」を参照してください。
設定 ダイアログで 保存 をクリックして変更を適用し、JetBrains Rider が保存先を選択できるようにするか、 保存 セレクターからレイヤーを選んで特定の設定レイヤーに変更を保存します。 詳細については、「レイヤーベースの設定 」を参照してください。
欠落している名前空間をインポートする
JetBrains Rider を使うことで、名前空間のインポートが不足しているシンボルを検出し、適切なインポートを自動で追加できます。 未解決のシンボルはエディターですぐに ハイライトされ、対応する修正が提案されます。

ファイル内に未解決のシンボルがいくつかある場合、修正によりそれらすべてのインポートが追加されます。 インポートは、 名前空間インポートの設定に従って追加されます。 詳細については、 欠落している名前空間をインポートする を参照してください。
冗長な名前空間のインポートを削除し、既存のものを最適化する
ネームスペースシンボルの使用を削除すると、インポートされたネームスペースはコード内で冗長になります。 JetBrains Rider がない場合は、すべてのファイルの先頭までスクロールして、未使用の名前空間インポートディレクティブを見つけて削除する必要があります。 JetBrains Rider を使えば、ファイル、プロジェクト、またはソリューションから未使用の名前空間インポートディレクティブを自動的に削除でき、作業が格段に楽になります。 冗長な名前空間インポートを削除する以外にも、JetBrains Rider は 名前空間のインポート環境設定に応じて、さまざまな方法で最適化できます。
冗長な名前空間のインポートはすべて エディターでハイライトされ、対応する クイックフィックスが スコープ内の修正を含めて提案されます。

提案された修正を適用することで、冗長な名前空間を必要な範囲で即座に削除することができます。
冗長な名前空間インポートを一括で削除する別のオプションは、 コードのクリーンアップです。 以下に説明するように、 Built-in: Full Cleanup プロファイルを使って コードクリーンアップを実行するか、特定のタスクだけをターゲットにした カスタムプロファイルを作成して実行することもできます。
クイックフィックスとは対照的に、コードのクリーンアップは、未使用のインポートを削除するだけでなく、既存のインポートを最適化して最適化します。 例: コードクリーンアップを使用すると、完全修飾型の名前を、対応する名前空間のインポートを追加してプレーン型の名前に置き換えることができます。
コードクリーンアップを使用して名前空間のインポートを最適化する
Ctrl+Alt+S を押すか、メニューから (Windows および Linux) または (macOS) を選択します。
クリーンアッププロファイル設定ページに移動します: 。
新しいカスタムクリーンアッププロファイルを作成する セクションの説明に従って、新しいプロファイルを作成します。 右側のプロファイル設定で、 ノードを展開します。
'using' ディレクティブを最適化する を選択します。
オプションで、領域に
usingディレクティブを含めるには、 地域で 'using' ディレクティブを利用する を選択し、 領域名 フィールドに領域の名前を指定します。
設定 ダイアログで 保存 をクリックして変更を適用し、JetBrains Rider が保存先を選択できるようにするか、 保存 セレクターからレイヤーを選んで特定の設定レイヤーに変更を保存します。 詳細については、「レイヤーベースの設定 」を参照してください。
名前空間のインポートを最適化するスコープを選択します。
ファイル内の任意の場所にキャレットを配置して、ファイルへの名前空間のインポートを最適化します。
ソリューションエクスプローラー の 1 つまたは複数の項目を選択して、これらのノードおよびその子項目にあるファイルの名前空間インポートを最適化します。
Ctrl+R, C を押すか、メインメニューから を選択してください。
表示された 整形とクリーンアップ ダイアログで、新しく作成したプロファイルを選択し、必要なら別のスコープを選択してください。 。
OK をクリックします。 JetBrains Rider は、選択したスコープ内の名前空間インポートを最適化します。
整形とクリーンアップ ダイアログを開いてプロファイルを選択せずに名前空間インポートを最適化したい場合は、作成したプロファイルを サイレントクリーンアップにバインドし、 Ctrl+R, G を押して実行できます。 名前空間インポートの最適化と他のコードスタイルタスクを組み合わせた カスタムクリーンアッププロファイルを作成することもできます。
名前空間インポートの環境設定を、他のすべての フォーマットおよび 構文スタイルルールとあわせて選択したコードブロックに適用するには、 Alt+Enter を実行し、 を選択します。
最近変更し、Git にコミットしようとしているコードで名前空間のインポートを最適化できます。 JetBrains Rider は、コミットする前に選択した クリーンアッププロファイルを実行します。
Git にコミットする前に名前空間のインポートを最適化する
Ctrl+K を押すか、メインメニューから を選択します。
コミット ツールウィンドウで
をクリックし、 コミットチェック 領域で インポートを最適化する チェックボックスを選択します。
コミット または コミットとプッシュ をクリックします。 JetBrains Rider は、コミットのためにステージングされたファイルで冗長な名前空間インポートを削除し、その後、変更をコミットします。
変更をファイルに保存するたびに名前空間のインポートを最適化して、編集内容が常にコードスタイルに準拠するようにすることができます。 ただし、これは Ctrl+S または Ctrl+S を使用して明示的に変更を保存した場合にのみ適用され、 auto-saving ではトリガーされません。 なお、自動保存されたファイルはすべて「再フォーマットとクリーンアップ」キューに配置され、次回の明示的な保存時に処理されます。
変更を保存するときに名前空間のインポートを自動的に最適化する
Ctrl+Alt+S を押して設定を開き、 を選択します。
整形とクリーンアップ を選択し、ファイル全体に適用するか、変更された行のみに適用するかを選択します。
次回、編集を終えてファイルまたはすべてのファイルを保存すると、JetBrains Rider は選択したプロファイルを使って対象ファイルをクリーンアップします。