ネーミングスタイル
JetBrains Rider は、コード内のシンボルに希望する命名スタイルを定義、制御、適用するのを支援します。 一連のルールがあり、各ルールは一連の制約を持つ特定の識別子を対象とします (たとえば、ルールは静的プライベート読み取り専用フィールドを対象にすることができます)。 各ルールには、複合語、アンダースコア、接尾辞、接頭辞などの大文字化を定義する 1 つ以上の関連スタイルを含めることができます。
これらのルールは、JetBrains Rider が コード補完や コード生成機能で新しいコードを作成し、 コードテンプレートを適用し、 リファクタリングを実行する際に考慮されます。 JetBrains Rider は命名規則違反を 検出して修正するのにも役立ちます。 必要に応じて、命名規則の自動チェックを 構成または無効にできます。
命名規則を構成する
すぐに使える状態で、JetBrains Rider はあらゆる種類の識別子をカバーする命名規則のセットを提供します。 これらの規則は、 マイクロソフトの命名ガイドライン、 .NET プラットフォームのコーディングスタイル(英語) 、さまざまなベストプラクティスに基づいています。
個人の環境設定や会社の標準が JetBrains Rider のデフォルトと異なる場合、命名スタイルを柔軟に設定できます。識別子の種類ごとに大文字・小文字のルール、プレフィックスやサフィックス、アクセス権ごとのバリエーション、無視する略語などを選択できます。
命名スタイルの環境設定は、 レイヤーベースの設定 のメカニズムを使って保存されます。 このメカニズムにより、さまざまなソリューションに対して異なる設定を維持したり、これらの設定をバージョン管理システム (VCS) で管理したり、チームメンバーと自動的に共有したりすることが可能になります。
命名規則のプロパティ
各命名規則には次のプロパティがあります。
ルールの説明: ルールが適用される場所を理解するのに役立つ任意の説明。
このスタイルを適用する: ルールによって許可される 1 つ以上の命名スタイル。 対応するボタンを使用してスタイルを追加または削除します。
リストでスタイルを選択したら、 スタイル セレクターで
UpperCamelCaseやlowerCamelCaseなどの基本スタイルを選択し、必要に応じて接頭辞と接尾辞を追加します。1 つのルールに複数のスタイルがある場合、対応するシンボル名がこれらのスタイルのいずれか 1 つと一致していれば、JetBrains Rider はコードスタイル違反を 報告しません。 それ以外の場合、JetBrains Rider はコードスタイル違反を検出し、デフォルトスタイル(リストの最初のスタイル)に従ってシンボルの名前を変更することを提案します。 デフォルトスタイルを変更するには、 上へ移動 ボタンと 下へ移動 ボタンを使用します。
次の要素 に: この領域では、命名規則が適用される場所を定義します。 対応するチェックボックスを使用して、どの種類の型と修飾子を持つメンバーが規則に準拠する必要があるかを指定します。
インスペクションを有効化する :このチェックボックスを使うと、このルールに関連するコードスタイル違反の 報告を無効化しつつ、JetBrains Rider が他の命名ルール違反を検出できる状態にできます。
このチェックボックスを無効にすると、ルールは JetBrains Rider が コード補完や コード生成機能で新しいコードを生成し、 コードテンプレートを適用し、 リファクタリングを実行する際に適用されます。 すべての命名規則の 自動チェックを無効にする方法もいくつかあります。

命名規則を変更する
Rider 設定 Ctrl+Alt+S で、 に移動し、 命名(Naming) タブを開きます。
リスト内の目的のルールをダブルクリックします。
必要に応じて命名規則の プロパティを構成します。
OK をクリックして、 ルール設定の編集 ダイアログを閉じます。
設定 ダイアログで 保存 をクリックして変更を適用し、JetBrains Rider が保存先を選択できるようにするか、 保存 セレクターからレイヤーを選んで特定の設定レイヤーに変更を保存します。 詳細については、「レイヤーベースの設定 」を参照してください。
既存のルールが命名規則に対して十分に細かくない場合は、さらにルールを追加できます。 たとえば、列挙型に大文字のキャメルケースを使用し、接頭辞を E にする必要があるとします。
命名ルールを追加する
Ctrl+Alt+S を押すか、メニューから (Windows および Linux) または (macOS) を選択し、左側の を選択します。
「+」をクリックします。
必要に応じて命名規則の プロパティを構成します。
OK をクリックして、 命名ルールの追加 ダイアログを閉じます。
設定 ダイアログで 保存 をクリックして変更を適用し、JetBrains Rider が保存先を選択できるようにするか、 保存 セレクターからレイヤーを選んで特定の設定レイヤーに変更を保存します。 詳細については、「レイヤーベースの設定 」を参照してください。
命名規則は削除できます。 規則を削除すると、一部の種類の識別子がどの規則でもカバーされなくなる可能性があります。 この場合、JetBrains Rider は、JetBrains Rider が コード補完や コード生成機能で新しいコードを生成し、 コードテンプレートを適用し、 リファクタリングを実行する際に内部のデフォルトを適用します。
ルールを削除するには、JetBrains Rider 設定 Ctrl+Alt+S の ページでそれを選択し、 削除 をクリックします。
EditorConfig を使用して命名規則を構成する
EditorConfig を使用してプロジェクトのコードスタイルを維持する場合、 .editorconfig ファイルから命名規則を構成することもできます。
EditorConfig から命名規則を構成するには、JetBrains Rider 設定 Ctrl+Alt+S の ページで editorconfig、プロジェクト設定、ルールセットから設定を読み取ります チェックボックスを選択する必要があります。
JetBrains Rider 設定ですでに構成した命名スタイルを .editorconfig ファイルに エクスポートすることもできます。
.editorconfig ファイルでの命名スタイル設定は、 EditorConfig 用 .NET 命名規則のプロパティ dotnet_naming_rule.*、 dotnet_naming_style.*、 dotnet_naming_symbols.* を使用して構成します。指定した シンボルの種類が JetBrains Rider の命名設定で利用可能なシンボルの種類に一致する場合に機能します。
それに加えて、JetBrains Rider は .NET 命名規則でカバーされていないケースをサポートするために、複数のカスタムプロパティを使用できます。 これらのプロパティは、JetBrains Rider の命名設定をエクスポートするとき、主に .editorconfig ファイルに現れます。
import_to_resharperこの接尾辞を使用すると、特定のプロパティを JetBrains Rider(
trueまたはfalse)で無視するかどうか指定できます。JetBrains Rider が設定を editorconfig にエクスポートするときに
as_predefinedも書き込まれます — 手動で変更しないでください。 例:dotnet_naming_rule.protected_rule_rule.import_to_resharper = falseresharper_descriptionツールチップのルールの説明を指定できます。 例:
dotnet_naming_rule.protected_rule_rule.resharper_description = Somethingresharper_guidJetBrains Rider はエクスポート時にこのプロパティを使用できますが、手動で変更しないでください。 例:
dotnet_naming_rule.protected_rule_rule.resharper_guid = eb5720f3-bc0a-442d-9f3c-8dc32b7c5c12resharper_style可能なスタイルのリストを指定できるようになり、.NET 命名スタイルのリストを拡張できます。 各スタイルは、「スタイル」、「接頭辞 + スタイル + 接尾辞」、「接頭辞 + スタイル」、または「スタイル + 接尾辞」になります。
スタイルは
AaBb、AaBb_AaBb、AaBb_aaBb、aaBb、aaBb_AaBb、aaBb_aaBb、AA_BB、aa_bb、Aa_bbの 1 つにすることができますリストの最後に
:do_not_checkを追加して、インスペクションを無効にすることができます。例:
dotnet_naming_rule.protected_rule_rule.resharper_style = AA_BB, aa_bb, I+AaBb, aaBb_AaBb, AaBb+Localresharper_applicable_kinds命名規則を適用する識別子の種類:
namespace、type、test_type、クラス、pure_class、record、struct、インターフェース、delegate、enum、type_member、test_member、method、async_method、extension_method、property、event、any_field、field(読み取り専用または定数ではない単純なフィールド)、readonly_field、constant_field、unity_serialised_field(Unity サポートプラグインが有効な場合)、enum_memberlocal、local_variable、catch_variable、local_constant、parameter、lambda_parameter、label、type_parameter、local_function例:
dotnet_naming_symbols.protected_rule_symbols.resharper_applicable_kinds = pure_classresharper_required_modifiersstatic、instance(なし、これらのいずれか、両方)。 例:dotnet_naming_symbols.protected_rule_symbols.resharper_required_modifiers = static, instanceresharper_csharp_naming_ruleresharper_styleと同じ値を使用しますが、この設定はあらかじめ定義されたルールのいずれかのみを指定するために使われます:types_and_namespaces、interfaces、type_parameters、method、property、event、locals、local_constants、parameters、public_fields、private_instance_fields、private_static_fields、constants、private_constants、static_readonly、private_static_readonly、enum_member、local_functions、other例:
resharper_csharp_naming_rule.private_instance_fields = I+AaBb_AaBb,_+aaBb:do_not_check
EditorConfig の規則が示すように、JetBrains Rider は現在のファイルのディレクトリおよびすべての親ディレクトリにある .editorconfig という名前のファイルで定義された命名規則を、ルートファイルパスに到達するか root=true を持つ EditorConfig ファイルが見つかるまで適用します。 .editorconfig ファイルで指定されているファイルマスク、たとえば *Test.cs も考慮されます。
CamelCase の命名スタイルと競合する大文字の略語を無視する
CamelCase シンボル名で大文字の略語、頭字語、頭字語 (MicroSoft の代わりに MS など) を使用したい場合があります。 デフォルトでは、JetBrains Rider は複数の大文字が連続している場合、それを一貫性のないキャメルケースとして 報告します:
![]()
これを回避するには、一貫性のない命名インスペクションによって省略語のリストが無視されるように構成できます。
大文字の略語は、特定の種類の識別子に対して定義された命名スタイルと矛盾してはならないことに注意することが重要です。
例: 無視された略語に MS を追加した場合、 MSBuilder は UpperCamelCase スタイルの識別子には受け入れられる名前になりますが、 lowerCamelCase または all_lower 命名スタイルの識別子には受け入れられません。
同様に、 myMSBuilder は lowerCamelCase に対しては問題ありませんが、 UpperCamelCase-styled 識別子に対しては問題ありません。
略語を無視リストに追加する
エディターで、名前に略語が使用されているハイライトされたシンボルにキャレットを置きます。
Alt+Enter を押すか、キャレットの左にある アクションインジケーターをクリックして、 アクションリストを開きます。
インスペクション '不整合な名前付け' | 略語リストに [ 略語 ] を追加する を選択

必要に応じて、無視された略語を特定の 設定レイヤーに保存することもできます。

シンボル名に許可する略語が多数ある場合は、無視する略語のリストを編集できます。
無視された略語のリストを編集する
Ctrl+Alt+S を押すか、メニューから (Windows および Linux) または (macOS) を選択し、左側の を選択します。
略語 の横にある … をクリックします。
略語を入力して、 追加 をクリックします。 必要なすべての略語に対してこれを繰り返し、 OK をクリックします。
または、スペースを区切り文字として使用して、 略語 フィールドを手動で編集します。
設定 ダイアログで 保存 をクリックして変更を適用し、JetBrains Rider が保存先を選択できるようにするか、 保存 セレクターからレイヤーを選んで特定の設定レイヤーに変更を保存します。 詳細については、「レイヤーベースの設定 」を参照してください。
命名規則の違反を検出して修正する
JetBrains Rider は「一貫性のない命名」コードインスペクションを使って、コード内の命名規則違反を検出します。 デフォルトでは、このインスペクションは 設計時コードインスペクションで常に適用され、検出された違反はエディターで 警告としてハイライトされます。 例: デフォルトのスタイルによれば、インターフェースの名前には接頭辞「I」が必要です。 インターフェース名がこのルールに一致しない場合、JetBrains Rider はその名前をハイライトし、その上にマウスを置くと問題を通知します:

現在のファイル以外で命名スタイルの違反を見つけたい場合は、プロジェクト内またはソリューション全体で「不整合な名前」インスペクションを実行できます。
特定のスコープで命名スタイル違反を見つける
エディターで、一貫性のない名前を持つハイライトされたシンボルにキャレットを置きます。
Alt+Enter を押すか、キャレットの左にある アクションインジケーターをクリックして、 アクションリストを開きます。
インスペクション '不整合な名前付け' | ファイル内に同様の問題を見つける を選択し、目的の範囲を選択します。

見つかった命名スタイル違反はすべて 問題ウィンドウ に表示されます。
検出された問題をダブルクリックすると、対応するシンボルのコードに移動できます。
エディターでハイライトされているほとんどの命名スタイル違反について、JetBrains Rider は準拠した名前で クイックフィックスを提案します。 Alt+Enter を押して、アクションリストで 名前を [ 適合名 ] に変更 を選択できます。

スコープ内修正機能を使用して、現在のファイル、プロジェクト、ソリューションでネーミングスタイル違反の自動修正を実行することもできます。
ただし、一致する名前が計算されたシンボルがすでに同じ名前空間に存在する場合、クイックフィックスは提案されません。 Rename リファクタリング でそのようなシンボルの命名を修正することができます。
命名規則の自動検査を構成して無効にする
既存のコードベースで JetBrains Rider に命名スタイルをチェックさせたくない場合は、該当するコードインスペクションを無効化するか、特定ルールの自動チェックを無効化できます。 ただし、自動チェックが無効でも、すべての命名規則は JetBrains Rider が コード補完や コード生成機能で新しいコードを生成し、 コードテンプレートを適用し、 リファクタリングを実行する際に適用されます。
命名スタイルの自動検査を無効にする
JetBrains Rider 設定 Ctrl+Alt+S の ページで 「矛盾した命名」インスペクションを有効化 チェックボックスをオフにします。
JetBrains Rider 設定 Ctrl+Alt+S の ページで「一貫性のない命名」と入力し、該当するコードインスペクションの横のチェックボックスをオフにしてください。
ソリューションで .editorconfig を使用を使用する場合、特定のスコープで 「一貫性のない命名」インスペクションを無効にすることができます。
resharper_inconsistent_naming_highlighting=none
特定の命名規則の自動検査を無効にする
Rider 設定 Ctrl+Alt+S で、 に移動し、 命名(Naming) タブを開きます。
リスト内の目的のルールをダブルクリックします。
開いた ルール設定の編集 ダイアログで、 インスペクションを有効化する チェックボックスをオフにします。
設定 ダイアログで 保存 をクリックして変更を適用し、JetBrains Rider が保存先を選択できるようにするか、 保存 セレクターからレイヤーを選んで特定の設定レイヤーに変更を保存します。 詳細については、「レイヤーベースの設定 」を参照してください。
既存のコードから C# 命名規則を使用する
パブリックリポジトリからソリューションをチェックアウトするか、別のコード命名スタイルが確立されているチームに一時的に参加する場合は、このソリューションの命名規則に従うと同時に、グローバルに構成された命名規則を変更しないことをお勧めします。
JetBrains Rider はこのような状況を自動的に処理します。新しいソリューションでシンボルの命名がグローバル設定と異なる場合、グローバル設定と異なる命名規則を検出し、それらの規則を変更し、変更した規則を 『ソリューション個人用』設定レイヤー (ソリューションの隣の .sln.DotSettings.user ファイル)に保存します。
新しいソリューションを開いたときにこれが発生した場合、JetBrains Rider はエディターに通知を表示します:

構成 をクリックして対応する設定ページ( )を開くことができます。 この設定ページでは、ソリューションコードに基づいて変更されたルールは黄色でハイライトされています。 JetBrains Rider の デフォルトの命名規則を使用する場合や、独自の方法で 命名スタイルを設定したい場合は、 自動検出ルールを使用する チェックボックスをオフにしてください。

イベントの Visual Studio 命名スタイルを扱う
デフォルトでは、JetBrains Rider はフィールドのイベントサブスクリプションには $object$On$event$ 命名パターンを、 this のイベントサブスクリプションには On$event$ を提案します。これは、JetBrains Rider が新しいイベントを生成するときと既存のイベントの命名スタイルをチェックするときの両方で使用されます。 必要に応じて、これらのパターンは JetBrains Rider 設定 の ページで変更できます。
Visual Studio によって新しいイベントが生成されると、別の命名パターン $object$_$event$ が使用されます。 既存のプロジェクトでイベントがこのように命名されており名前を変更したくない場合は、JetBrains Rider 設定 の ページで Microsoft イベントの命名スタイルをサポート チェックボックスが選択されていることを確認してください。 これにより、これらのイベントで「名前の不一致」の警告が表示されなくなります。