ReSharper 2026.1 ヘルプ

フォーマットメンバーを生成する

.NET のどのタイプでも、ToString() メソッドが実装されています。このメソッドは、そのタイプのオブジェクトの文字列表現を返します。型に意味のある文字列を返すには、ToString() メソッドをオーバーライドする必要があります。

ReSharper を使用すると、フォーマットメンバーを生成するコマンドを使用してこのルーチンを自動化できます。

ターゲット C# バージョンに応じて、ReSharper は補間文字列または String.Format() のいずれかを使用します。コンテキストアクション Alt+Enter を使用してそれらの間でいつでも変換できることに注意してください。

以下の例では、このコマンドを使用して、_radius および _center フィールドに基づいて ToString() メソッドを生成します。

生成前

生成後

class Circle { int _radius; Point _center; }
class Circle { int _radius; Point _center; public override string ToString() { return $"{nameof(_radius)}: {_radius}, {nameof(_center)}: {_center}"; } }

メンバーをフォーマットするためのオーバーライドを生成する

  1. エディターで、型名または型内のフォーマットメンバーのオーバーライドを挿入する行にキャレットを置きます。キャレットが型名上にある場合、生成されたコードは型宣言の先頭に追加されます。

  2. Alt+Insert を押すか、メインメニューから ReSharper | 編集 | コードの生成…を選択します。あるいは、Control+Shift+A を押して、ポップアップでコマンド名を入力して、そこで選択することもできます。

  3. 生成ポップアップで、メンバーのフォーマットを選択します。

  4. 表示される生成ダイアログで、ToString() オーバーライドで使用されるフィールドおよび / または自動プロパティを選択します。

    Generating 'ToString()' with ReSharper

    タイプにフィールド / プロパティがない場合、またはそれらのいずれかを選択しない場合、ReSharper は設定に応じて、新しい NotImplementedException() をスローし、デフォルト値を返し、生成されたメソッドの本体にコンパイルされないコードを置きます。ReSharper オプションのコード編集 | メンバーの生成ページで設定を行うことができます。

    必要に応じて、ダイアログで次のコントロールを使用します。

    • ToString はすでに存在するToString() の実装がすでに存在する場合に表示され、次のいずれかを選択できます。

      • メソッドがすでに存在する場合は置換します。

      • 新しく生成されたメソッドを既存のメソッドと並べて置きます。

      • 新しいメソッドの生成をすべてスキップします。

    • 'nameof' を使用するターゲット C# バージョンが 6.0 より大きい場合に表示されます。このチェックボックスが選択されている場合、ReSharper は nameof(symbol_name) を使用してシンボルの文字列表現を定義します。それ以外の場合、文字列表現を自動的に計算します。たとえば、_radius という名前のフィールドは "Radius" としてレンダリングされます。

  5. 完了をクリックしてウィザードを完了します。

    オプションをクリックして、ReSharper オプションのコード編集 | メンバーの生成ページで一般的なコード生成設定を確認または変更することもできます。

生成メニューでメンバーを無効にするを選択することでオーバーライドを生成することもできますが、この場合、オーバーライドは base.ToString() を返します。

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

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

2024 年 5 月 26 日

関連ページ:

言語による ReSharper: C#

ReSharper 2026.1 は、C# 14 までのすべての C# バージョンを完全にサポートしています。C# は ReSharper が対象とする主要なプログラミング言語であるため、C# ではすべての ReSharper 機能(他の言語に固有の一部の機能を除く)がサポートされています(詳細については、さまざまな言語の ReSharper 機能を参照してください)。言語バージョンの変更:ReSharper は、プロジェクトファイル *.csproj で指定された C# バージョンを自動的に検出...

欠落 / オーバーライドするメンバーを生成する

継承された型の場合、ReSharper には 2 つの関連するコード生成機能があります。不足しているメンバーの実装は、現在のクラスから欠落しているインターフェースメンバーまたは抽象メンバーを実装します。メンバーのオーバーライドは不足しているメンバーの実装と同じですが、適用可能な場合は仮想メンバーもオーバーライドします。通常、ReSharper は、実装されていないベースメンバーを持つ型をエラーとしてハイライトし、不足しているメンバーをクイックフィックスで生成できるため、不足しているメンバーの実装...

ASP.NET MVC 特有の機能

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

言語による ReSharper: MSBuild

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

言語による ReSharper: SQL と NoSQL

このセクションには、SQL のようなファイルの ReSharper 機能と C# 文字列の SQL インジェクションに関する情報が含まれています。使用するデータベースによっては、ソリューション内に異なるダイアレクト(DBMS 固有の SQL バージョン)の SQL ファイルが存在する場合があります。各 SQL ファイルで構文のハイライト、コード補完、コードインスペクションが正しく機能するには、SQL ダイアレクトを設定する必要があります。SQL ダイアレクトの構成メインメニューからを選択するか、...

等価メンバーを生成する

オブジェクトクラスでの等式メソッド(つまりおよび)および等式演算子(つまりおよび)の実装により、参照の等式が保証されます。作成するタイプ(最終的にから派生するため、デフォルトで参照の等価性を実装します)では、このタイプのオブジェクトの値の等価性を実装し、ハッシュコードをハッシュ目的の一意のオブジェクト識別子として使用することができます。この場合、タイプの等式メソッドと演算子をオーバーライドする必要があります。ReSharper を使用すると、等価メンバーを生成するコマンドを使用してこれらのルーチ...