ReSharper 2024.2 ヘルプ

生成補完

ReSharper でコードを生成する最も簡単な方法の 1 つは、コード補完を使用することです。必要なのは、いくつかの文字を入力することだけです。コード生成の提案は、自動補完基本補完のリストに含まれています。

コード補完でコードを生成する方法の例をいくつか示します。

メンバーのオーバーライドと実装

以下の例では、コード補完は、基本クラスから仮想メンバーのオーバーライドを作成できます。派生型で基本メソッド名を入力し始めると、それをオーバーライドするための提案が表示されます。

ReSharper: Completion suggestion for method override

提案を受け入れると、デフォルト実装のメソッド本体がエディター内で展開されます。

public class Derived : BaseClass { protected override void DoSomething(int x, string s) { base.DoSomething(x, s); } }

フィールドのプロパティ

フィールドのプロパティを生成するには、フィールドの名前の入力を開始します。ReSharper は、命名スタイルに従って、対応する名前で読み取り専用または読み書き可能なプロパティを作成することを提案します。

ReSharper: Completion suggestion to generate a property for a field

提案を受け入れると、プロパティ本体がエディターで展開されます。

public class Properties { private int _myField; public int MyField { get { return _myField; } set { _myField = value; } } }

型コンストラクター

ReSharper は、現在のタイプの既存メンバーに応じて、補完リストに異なるコンストラクターを提案します。コンストラクターを作成するには、ctor と入力します。補完リストでは、次の提案が表示されることがあります。

  • ctor — パラメーターのないコンストラクター

  • ctorf — すべてのフィールドを初期化するコンストラクター

  • ctorp — すべての自動プロパティを初期化するコンストラクター

  • ctorfp — すべてのフィールドと自動プロパティを初期化するコンストラクター

以下の例では、すべての種類のコンストラクターを使用できます。

ReSharper: IntelliSense for generating constructors.

ctorfp の提案を受け入れると、コンストラクターはエディターで展開されます。

public class Person { private string age; public string Name { get; set; } public Person(string age, string name) { this.age = age; Name = name; } }

列挙型の等価性とフラグチェックを生成する

列挙型の値をこの列挙型のメンバーの 1 つと比較する必要がある場合は、点を入力して、補完リストで目的の列挙型メンバーを選択します。

Completing enum members to produce equality/flag checks

ReSharper が比較を生成します:

public enum Direction { North, East, South, West } void Turn(Direction whereTo) { if(whereTo == Direction.South }

補完リストのテンプレート

すべてのライブテンプレート、後置テンプレート、およびソーステンプレートが補完リストに表示されます。テンプレートは、ショートカットによって識別されます ( 定義済みテンプレートのショートカットのリストは次のとおりです)。それらは、対応するアイコン ThemedIcon.LiveTemplate.Screen.(Gray).png で認識できます。

例: public static void Main テンプレートを呼び出すには、そのショートカット psvm を入力します。

ReSharper: Code template in completion list

提案を受け入れると、Main メソッドはエディターで展開されます:

public static void Main(string[] args) { }

キーボードを使用して補完リストで項目を選択すると、選択は最後の項目の次に最初の項目に移動し、その逆も同様です。この動作を無効にするには、ReSharper オプション Alt+R, O環境 | IntelliSense | 補完外観ページでリストの両端の周囲のループ選択をクリアします。

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

ここで説明する手順と例では、C# の機能の使用について説明します。他の言語の詳細については、言語別 ReSharper セクションの対応するトピックを参照してください。

関連ページ:

コード補完 (IntelliSense)

ReSharper は、高度な機能を備えた Visual Studio のネイティブコード補完(IntelliSense)を補完し、拡張します。例: あなたの入力に基づいて提案のリストを絞り込み、選択した型と拡張メソッドを自動的にインポートし、メソッド名を補完するときに括弧を追加し、型に応じて変数とフィールド名を提案するなど。ReSharper のコード補完の機能に慣れ親しむために、いくつかの実装の基本があります: デフォルトでは、ReSharper は Visual Studio のネイティブの...

自動補完

ReSharper の自動補完は、クラス、メソッド、変数、キーワード、以前にインポートされた拡張メソッドを含む現在の可視性スコープ内で使用可能なその他のシンボルの名前を提案します。ライブテンプレート、コード生成の提案、単体テストのカテゴリなど、他の多くのコンテキスト固有の提案も補完リストで利用できます。デフォルトでは、自動補完の候補にはスマート補完とインポートシンボル補完の項目も含まれます。デフォルトの動作を変更する場合は、ReSharper オプション Alt+R, O のページで対応するコントロ...

ネーミングスタイル

ReSharper は、コード内のシンボルの希望する命名スタイルを定義、制御、適用できます。一連のルールがあり、各ルールは一連の制約を持つ特定の識別子を対象とします (たとえば、ルールは静的プライベート読み取り専用フィールドを対象にすることができます)。各ルールには、複合語、アンダースコア、接尾辞、接頭辞などの大文字化を定義する 1 つ以上の関連スタイルを含めることができます。これらのルールは、ReSharper がコード補完およびコード生成機能を使用して新しいコードを生成し、コードテンプレート...

ソーステンプレート

従来、テンプレートまたはスニペットは、ソースコードの外部で保存および管理されていました。通常、テンプレートは汎用定型コードをすばやく作成するのに役立つため、これは理にかなっています。これらの目的のために、ReSharper は多くの事前定義されたライブテンプレート、サラウンドテンプレート、およびファイルテンプレートを提供します。これらのタイプの独自のテンプレートを作成することもできます。ただし、現在のプロジェクトまたはソリューションにのみ関連する繰り返し可能なコードを生成したい場合があります。R...

C# の定義済みライブテンプレート

このトピックでは、ReSharper 2024.2 の C# の事前定義されたライブテンプレートをすべてリストします。ライブテンプレートの詳細については、「ライブテンプレートを使用してソースコードを作成する」を参照してください。現在のファイルコンテキストどこでもスコープ本文 $CTX$ パラメーター - 現在のコンテキストを説明するアイテムのリストを提供します。これには、型名、名前空間名などを含むファイル名が含まれます。このテンプレートは役に立つかもしれません: 現在のコンテキストへの参照を含む文字列リ...

ASP.NET MVC 特有の機能

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