コード構文スタイル: ファイルスコープの名前空間
C# 10 以降、単一の名前空間を含むファイルでファイルスコープの名前空間宣言を使用できます。
ファイルスコープまたはブロックスコープの名前空間宣言に固執する場合、JetBrains Rider を使用すると、環境設定を構成し、コードベース全体で環境設定の一貫性を維持できます。
JetBrains Rider は、既存のコードでファイルスコープの名前空間の設定を適用するのに役立ち、コード補完とコード生成機能を備えた新しいコードを生成し、コードテンプレート を適用し、リファクタリングを実行するときに設定を考慮に入れます。
ファイルスコープの名前空間の設定を適用する
JetBrains Rider は、ファイル内の単一の名前空間が設定に準拠しているかどうかを確認できます。準拠していない場合は、そのような宣言をハイライトし、対応するクイックフィックスまたはスコープ内の修正を提案します。デフォルトの JetBrains Rider の設定では、ファイルスコープの名前空間が優先されます。
![JetBrains Rider: 「ファイルスコープの名前空間へ」クイックフィックス JetBrains Rider: 'To file-scoped namespace' quick-fix](https://resources.jetbrains.com/help/img/rider/2024.1/file_scoped_namespace_fix.png)
しかし、設定でき嗜好を JetBrains Rider は、既存のファイルスコープの名前空間のブロックスコープを作る提案別の方法で:
![JetBrains Rider: 「スコープスコープの名前空間へ」クイックフィックス JetBrains Rider. 'To block-scoped namespace' quick-fix](https://resources.jetbrains.com/help/img/rider/2024.1/block_scoped_namespace_fix.png)
バルクモードでファイルスコープの名前空間の設定を強制する別のオプションは、コードのクリーンアップです。組み込みプロファイルフルクリーンアップまたは再フォーマットして構文スタイルを適用のいずれかを使用してコードクリーンアップを実行するか、以下で説明するように、特定のタスクのみを対象としたカスタムプロファイルを作成して実行できます。
カスタムコードクリーンアッププロファイルを使用して、ファイルスコープの名前空間に設定を適用する
Ctrl+Alt+S を押すか、メニューから
(Windows および Linux)または (macOS) を選択します。クリーンアッププロファイル設定ページに移動します:
。新しいカスタムクリーンアッププロファイルを作成するセクションの説明に従って、新しいプロファイルを作成します。新しいプロファイルの選択したプロファイル設定セクションで、名前空間を配置します(ファイルスコープとブロックスコープチェックボックスをオンにします。必要に応じて、このプロファイルで他のコードクリーンアップタスクを有効にすることができます。
設定ダイアログで保存をクリックして変更を適用し、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 は選択されたプロファイルを使用して影響を受けるファイルをクリーンアップします。
ファイルスコープの名前空間の設定を構成する
名前空間宣言スタイルの設定は、レイヤーベースの設定のメカニズムを使用して保存されます。特に、このメカニズムを使用すると、さまざまなソリューションのさまざまな設定を維持したり、これらの設定を VCS で維持したり、チームメンバーと自動的に共有したりできます。
設定で名前空間宣言スタイルを構成する
JetBrains Rider 設定 Ctrl+Alt+S の構文スタイルタブを選択します。
ページに移動し、コード本体にある名前空間オプションを見つけて、ファイルスコープまたはブロックスコープを選択します。
右側の列のセレクターを使用すると、設定とは異なるコードインスペクション検出コードの重大度レベルを設定できます。
設定ダイアログで保存をクリックして変更を適用し、JetBrains Rider が変更を保存する場所を選択できるようにするか、保存セレクターからこのレイヤーを選択して特定の設定レイヤーに変更を保存します。詳細については、「レイヤーベースの設定」を参照してください。
また、対応する問題がハイライトされているエディターで、名前空間宣言の設定を変更することもできます。
エディターから名前空間宣言スタイルの設定を変更する
JetBrains Rider のインスペクションでハイライトされているコードの問題にキャレットを置きます。
Alt+Enter を押すか、キャレットの左側にあるアクションインジケーターをクリックして、アクションリストを開きます。
アクションリストでインスペクション " 優先される名前空間本体スタイルを使用します ..." | コードスタイルを設定するを選択し、希望の設定を選択します。
変更は、スマートセーブロジックを使用して保存されます。
変更したスタイル設定を共有設定レイヤーに保存する必要がある場合は、コードスタイルを設定するメニュー項目をクリックするか、選択時に Enter を押します。JetBrains Rider により、JetBrains Rider 設定の ページが開きます。必要に応じて設定を変更し、保存先をクリックして、目的の設定レイヤーを選択します。
関連ページ:
![](https://pleiades.io/icons/rider.png)
コード補完 (IntelliSense)
JetBrains Rider のコード補完機能に慣れ親しむために、実装の基礎をいくつか紹介します。新しい識別子の入力を開始するとすぐに、自動補完の候補リストが表示されます。を押すと、基本補完の候補リストが表示されます。他の 2 つの補完コマンド、型一致補完および第 2 基本補完は、高度なアルゴリズムを適用して、候補リストにさらに項目を追加します。AI Assistant を有効にしている場合は、周囲のコンテキストに基づいてコードブロック全体を作成できる AI を搭載したコード補完を利用できます。...
![](https://resources.jetbrains.com/help/img/rider/2024.1/Code_Generation__Implement_Override__quick-fix.png)
コード生成
JetBrains Rider は、定型コードを生成するさまざまな方法を提供します。例: 宣言されていないコードシンボルを使用し、これらのシンボルを用途に基づいて自動的に生成したり、型メンバーを生成したりすることができます。現在のファイルで設計時コードインスペクションが有効になっている場合、JetBrains Rider は足りないメンバーを検出し、足りないメンバーを実装するために対応するクイックフィックスを提案します。コンテキストアクションとコードテンプレートを使用すると、コードを生成するその...
![](https://resources.jetbrains.com/help/img/rider/2024.1/code_analysis_sample.png)
設計時にコードの問題を分析する
JetBrains Rider は、エディターでコードファイルを開くとすぐに、コードファイルが閉じられるまで分析を開始します。検出されたすべてのコードの問題は、重大度に応じてエディターでハイライトされます。問題のマップは、エディターウィンドウの右側のエラーストライプにも表示されます。ここでは、ファイルのステータスを即座に確認し、マークをクリックして特定のコードの問題に移動できます。デザインタイムインスペクションの機能:デザイン時のインスペクション機能は、Rider エディターの基本機能への主要...
![](https://resources.jetbrains.com/help/img/rider/2024.1/naming_style_quick_fix.png)
スコープを修正
ほとんどのクイックフィックスは、キャレットで現在の問題を修正できますが、中には (たとえば、未使用のディレクティブを削除する、フィールドを読み取り専用にする、冗長なキャストの除去など)、現在のファイル、現在のプロジェクト、ソリューション全体など、より大きな範囲で問題を自動的に見つけて修正できるものもあります。範囲内の修正を適用する:このような修正は、アクションリストの横に表示される小さな矢印で識別できます。範囲内の修正を適用する JetBrains Rider のインスペクションでハイライトされ...
![](https://resources.jetbrains.com/help/img/rider/2024.1/actions_list_2.png)
コンテキストアクション
コンテキストアクションは、エディターで直接利用できるコード変換ヘルパーです。クイックフィックスとは対照的に、コンテキストアクションは問題の解決やコードの改善を目的としているためはなく、アクセス修飾子の変更、null をチェックするコードの生成、'foreach' の 'for' への変換などの小さな変更を素早く導入できます。JetBrains Rider は、サポートされているすべての言語で数百のコンテキストアクションを提供します。完全なリストは、JetBrains Rider 設定のページお...
![](https://resources.jetbrains.com/help/img/rider/2024.1/code_analysis_target_framework.png)
コードインスペクション設定を構成する
設計時コードインスペクションを構成する:デフォルトでは、JetBrains Rider はサポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかにかかわらず、コードインスペクションを特定の範囲でいつでも実行できます。「鉛筆」ウィジェットを使用して、エディターから直接インスペクション設定をすばやく調整するか、設定でより詳細な構成を行うことができます。を押すか、メニューから(W...