ReSharper 2021.1 ヘルプ

コードの構文スタイル: オプションのメンバー限定子

C# では、this キーワードを使用してインスタンスメンバーを修飾し、型名または基本型名を使用して静的メンバーを修飾できます。これらの修飾子は、ローカル変数またはメソッドパラメーターによって隠されたメンバーを明確にするのに役立ちます。他のすべての場合では、これらの修飾子はオプションであり、使用するかどうかは自分で決めることができます。ReSharper を使用すると、オプションの修飾子を使用するための設定を構成し、それらの設定を適用できます。

ReSharper を使用すると、既存のコードでオプションのメンバー修飾子を調整したり、コード補完コード生成機能を使用して新しいコードを作成したり、コードテンプレートを適用したり、リファクタリングを実行するときに設定を考慮できます。

オプションのメンバー修飾子にスタイル設定を適用する

デフォルトでは、ReSharper はすべてのオプションのメンバー修飾子を重複として扱い、削除することを提案します。

Suggestion to remove redundant qualifier

オプションの修飾子を使用する場合は、以下で説明するように明示的に指定する必要があります。例: 宣言されている型で静的メソッドを修飾する方が好きかもしれません:

Preferences for member qualifiers

設定を変更するとすぐに、ReSharper は同じコードを異なる方法で扱い、対応する修正を提案します:

Suggestion to qualify with the base type name

バルクモードでメンバー修飾子の設定を強制する別のオプションは、コードのクリーンアップです。組み込みプロファイルフルクリーンアップまたは再フォーマットして構文スタイルを適用のいずれかを使用してコードクリーンアップ実行するか、以下で説明するように、特定のタスクのみを対象としたカスタムプロファイルを作成して実行できます。

カスタムコードクリーンアッププロファイルを使用してメンバー修飾子の設定を適用する

  1. メインメニューから ReSharper | オプションを選択するか、Alt+R O を押します。

  2. クリーンアッププロファイル設定ページに移動します: コード編集 | コードのクリーンアップ | プロファイル

  3. 新しいカスタムクリーンアッププロファイルを作成するセクションの説明に従って、新しいプロファイルを作成します。新しいプロファイルの選択したプロファイル設定セクションで、修飾子の配置チェックボックスをオンにします。必要に応じて、このプロファイルで他のコードクリーンアップタスクを有効にすることができます。

  4. オプションダイアログで保存をクリックして変更を適用し、ReSharper に保存場所を選択させるか、次へ保存リストを使用して変更を特定の設定レイヤーに保存します。詳細については、ReSharper 設定の管理と共有を参照してください。

  5. 設定を適用する範囲を選択します。

    • ファイルの任意の場所にキャレットを設定して、ファイルの設定を強制します。

    • ソリューションエクスプローラー内の 1 つまたは複数の項目を選択して、これらのノードおよびその子項目にあるファイルに設定を適用します。

  6. 以下のいずれか 1 つを実行します:

    • Control+Alt+F を押すか、メインメニューから ReSharper | 編集 | コードのクリーンアップ... を選択してください。

    • テキストエディターの任意の場所を右クリックするか、選択項目を右クリックし、コンテキストメニューでコードのクリーンアップを選択します。

  7. 開いているコードのクリーンアップダイアログで、新しく作成したプロファイルを選択します。

  8. 実行をクリックします。ReSharper は、選択した範囲であなたの設定を強制します。

コードのクリーンアップダイアログを開いてプロファイルを選択せずにメンバー修飾子の環境設定を適用する場合は、作成したプロファイルをサイレントクリーンアップにバインドし、Control+Shift+Alt+F を押して実行できます。環境設定の適用と他のコードスタイルタスクを組み合わせたカスタムクリーンアッププロファイルを作成することもできます。

オプションのメンバー修飾子の設定を構成する

メンバー限定のスタイル設定は、レイヤーベースの設定のメカニズムを使用して保存されます。とりわけ、このメカニズムにより、さまざまなソリューションのさまざまな設定を維持したり、これらの設定を VCS に保持したり、チームメンバーと自動的に共有することができます。

  1. ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページに移動します。

  2. インスタンスメンバー資格および静的メンバー資格カテゴリの設定を、コーディングのプラクティス / 標準に従って変更します。

  3. 右側の列の通知するセレクターを使用して、設定とは異なるコードインスペクション検出コードの重大度レベルを設定できます。

  4. オプションダイアログで保存をクリックして変更を適用し、ReSharper に保存場所を選択させるか、次へ保存リストを使用して変更を特定の設定レイヤーに保存します。詳細については、ReSharper 設定の管理と共有を参照してください。

この機能は、次の言語とテクノロジーでサポートされています。

関連ページ:

コードインスペクション: ローカル変数がメンバーを隠す

このインスペクションを抑制して特定の問題を無視したり、重大度レベルを変更して問題を目立たなくしたり、完全に無効にしたりできます。フィールドと同じ名前のローカル変数を持つと、メンバーフィールドが効果的に隠されます。次に例を示します。class Person { string name; void DoSomething() { string name = "..."; } } これは、誰かがメソッドで参照している名前が以前に定義されたフィールドであると想定する可能性があるため、混...

コードインスペクション設定の構成 | ReSharper

設計時コードインスペクションを構成する:デフォルトでは、ReSharper は、サポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかに関係なく、コードインスペクションは常に特定のスコープで実行できます。メインメニューからを選択するか、Alt+R O を押してから、左側のを選択します。設計時コードインスペクションを切り替えるには、コード分析を有効にするチェックボックスを使用し...

ReSharper 設定の管理と共有 | ReSharper

ReSharper は、階層化された設定のメカニズムを使用して環境設定を保存するため、次の利点があります。さまざまなソリューションで異なる設定を行うことができます。環境設定のさまざまなサブセットを別の場所に保存し、特定のソリューションで作業するときに環境設定を組み合わせることができます。例: 記号のアイコンとチーム設定のコード形式を個人設定で保存し、これらの設定を自動的に組み合わせることができます。設定の特定のサブセットを VCS に保持することにより、チーム内の設定を同期できます。ReShar...

コードのクリーンアップダイアログ | ReSharper

コードのクリーンアップダイアログでは、利用可能なコードクリーンアッププロファイルを使用して、選択したスコープ内のコードをクリーンアップしたり、カスタムクリーンアッププロファイルを作成および編集したりできます。このダイアログでクリーンアッププロファイルを作成または変更する場合、変更はスマート保存ロジックを使用して保存されることに注意してください。変更を共有設定レイヤーに保存する必要がある場合は、ReSharper オプションのページで変更を行い、次へ保存をクリックしてから、目的の設定レイヤーを選択...

ASP.NET MVC 特有の機能 | ReSharper

ReSharper には、一般的な ASP.NET 機能に加えて、ASP.NET MVC での作業をより簡単にサポートする特殊機能があります。構文のハイライト:ASP.NET MVC メソッド呼び出しとパラメーターの特別な構文のハイライト: コード補完:文字列リテラルでアクションとコントローラーを参照するための専用コード補完: ナビゲーションと検索:さまざまなナビゲーション機能がアクションとコントローラーでも機能します。コード生成:使用箇所から新しいコントローラーとアクションを作成する: 最終...

言語による ReSharper: MS ビルド | ReSharper

MSBuild は、アプリケーションを構築するために広く使用されているプラットフォームです。特定の XML タグを使用して、プロジェクトの構築方法や実行方法を定義できます。ReSharper を使用すると、より速く行うことができます。コード検査:あらかじめ定義された要素またはその属性の名前を誤って入力した場合、ReSharper はそのような不一致についてハイライト表示します。まだ定義されていないプロパティを参照しようとすると、ReSharper はそのようなケースも検出します。MSBuild...