ReSharper 2019.2ヘルプ

インライン・パラメータ名のヒント

メソッド呼び出しで名前付き引数(英語)を記述する代わりに、ReSharperのパラメーター名ヒントを使用できます。これは、メソッド呼び出しで対応する引数の隣にパラメーター名を表示するエディターの装飾です。

パラメータ名のヒントを使用する理由

次のメソッド呼び出しを考えてみましょう。

AddCheckbox(true, true, "AutoFill", null);

このコードを読むときは、ここで何が起こるかを理解するために、メソッドのシグネチャーを停止して調べる必要があります。( パラメータ情報のツールヒントを使用するか、メソッド宣言に移動して行うことができます)。パラメータ名のヒントを使用すると、同じ呼び出しがより明確になります。

ReSharper: inline parameter name hints help understanding arguments in a method call

パラメータ名のヒントの考え方は、インテンションがクリアされないかもしれない引数のパラメータ名を自動的に表示することですが、引数の目的が明白なヒントでエディターを混乱させないようにしてください。呼び出し。これを実現するために、ReSharperは構成可能なヒューリスティックを多数適用します。

パラメータ名のヒントの設定

ReSharperオプション(Alt+R,,O)の環境 | エディター | パラメーター名ヒントページで、パラメーター名のヒントを切り替えて構成できます。パラメーター名ヒントを表示するを使用してヒントを切り替えてから、オプションで他のコントロールを使用して、ヒントを非表示にする場所を指定します。

非リテラル用に非表示

変数、リソース、式、または呼び出しである引数に対するパラメータ名のヒントを非表示にして、特定の種類の非リテラル引数に対して例外を設定できるようにします。

ビルダーのようなメソッドの非表示

System.Text.StringBuilder(英語)のメソッドと同様のメソッドのパラメータ名ヒントを非表示にします。このメソッドは、そのクラスを含む変更されたオブジェクトを返します。このようなメソッドの名前は、通常、そのパラメータの目的を明確にします。

メソッドパラメータが番号付き接尾辞だけ異なる場合は非表示にする

次のようなシグネチャーを持つメソッドを呼び出すときに、パラメータ名のヒントを非表示にします。

void DoSomething(int arg0, int arg1, int arg2, int arg3) {/*...*/}

メソッド名から最初のパラメータのインテンションがわからない場合は非表示にする

シグネチャーが類似したメソッドを呼び出すときに、最初の引数にパラメータ名のヒントを隠す

void SetExtension(string extension, object next) {/*...*/}

引数のインテンションが使用箇所から明らかな場合は隠す

シグネチャーが類似したメソッド

void DoSomething(int value, object context) {/*...*/}
メソッドがそのように呼び出された場合、value パラメータ名のヒントを隠します
DoSomething(myValue, context: null);

他の設定とは無関係に、パラメータ名ヒントが常に隠されるメソッドパターンのリストを設定することができます。
これらのリストは、言語ごとに独立して機能します。

パターンは、完全修飾メソッド名、パラメータ数、およびパラメータ名と照合されます: たとえば:

  • System.Math.* は、FQNが System.Mathで始まるすべてのメソッドに一致します。

  • System.Math.*(*, *) は、System.Math 名前空間のすべてのメソッドを2つのパラメータと照合します。

  • (*info) は、パラメータ名が infoで終わるすべての単一パラメータメソッドに一致する

  • (key, value) は、すべてのメソッドとパラメータ key および valueを一致させます。

  • Put(key, value) はすべての Put メソッドを keyvalueに一致させます

パラメータ名のヒントを示すメソッド呼び出しにキャレットがあるときは、Alt+Enterを押し、パラメーター名ヒントの構成を選択するか、パラメータヒントを右クリックしてコマンドの1つを選択すると、次のことができます。

  • このメソッドのすべての呼び出しのヒントを非表示にします(このメソッドのヒントを将来表示する場合は、オプションページで対応する例外パターンを見つけて削除してください)。

  • ヒントを無効にします(後でオプションページで有効にすることもできます)。

  • 詳細設定のオプションページを開きます。

ReSharper: configuring parameter name hints from the Alt+Enter menu

Ctrl+Shift+Alt+5 ショートカットまたはステータスインジケーターのコンテキストメニューから現在のソリューションのパラメーター名のヒントを切り替えることもできます。

ReSharper; switching parameter name hints from the status indicator

Visual Studioのオプションでパラメータ名のヒントの色を設定できます。ツール | オプション | 環境 | フォントおよび色に移動して、表示項目のリストでReSharperパラメータ名のヒントを見つけます。

異なる言語での適用性

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

Language: C#Language: VB.NETLanguage: C++Language: HTMLLanguage: ASP.NETLanguage: RazorLanguage: JavaScriptLanguage: TypeScriptLanguage: CSSLanguage: XMLLanguage: XAMLLanguage: ResxLanguage: Build ScriptsLanguage: ProtobufLanguage: JSON
Feature is availableFeature is availableFeature is availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not available

C#の機能の使用方法については、こちらの説明と例を参照してください。他言語の詳細については、言語によるReSharperの対応するトピックを参照してください。

最終更新日: 2019年10月15日

関連ページ:

コードの構文スタイル: 名前付き/位置引数

特定のタイプのパラメーターに名前付き引数を使用したい場合は、ReSharperを使用してこのプラクティスを実施できます。次のメソッド呼び出しを考えてみましょう。 AddCheckbox(true, true, "AutoFill", null); このコードを読むときは、ここで何が起こるかを理解する...

パラメータ情報

関数呼び出しを書いたり調べたりしているときはいつでも、ReSharperは関数のすべてのオーバーロードに対して許可された引数に関する詳細を表示できます。ツールチップでは、パラメータを持つすべてのパブリックシグニチャと、存在する場合は関数のドキュメントから取得した簡単な説明が表示されます。パラメータ名...

宣言に移動

このコマンドを使用すると、任意のシンボル使用箇所からシンボルの宣言にナビゲートできます。ファイル構造ウィンドウや他のツールウィンドウからエディターからこのコマンドを呼び出すことができます。反対方向にナビゲートする(シンボルの使用箇所)には、すでにシンボル宣言を行っているときに宣言に移動コマンドを呼び...

マーカーバーとステータスインジケータ

マーカーバーとステータスインジケーターを使用すると、現在のファイルの設計時コードインスペクションの結果を確認し、コードの課題間を移動できます:また、マーカーバーには、たとえば現在のファイルの使用箇所を強調表示するときに、他のReSharperアイテムの特別なマークが表示されます次の場合、マーカーバー...

異なる言語でのReSharperの機能

以下の表は、各ReSharper機能がサポートされている言語/技術を説明しています。言語固有の機能のみを一覧表示し、プロジェクト依存関係図、名前空間の調整リファクタリング、スタックトレースエクスプローラー、最近のファイルを見るなどのプロジェクト/ソリューションのスコープには多くの機能は含まれていませ...

ASP.NET MVC特有の機能

ReSharperには、一般的なASP.NET機能に加えて、ASP.NET MVCでの作業をより簡単にサポートする特殊機能があります。構文の強調表示:ASP.NET MVCメソッドの呼び出しとパラメータに対する特別な構文の強調表示コード補完:文字列リテラルでアクションとコントローラーを参照するための...