ReSharper 2019.3ヘルプ

委譲メンバーを生成する

ReSharper | 編集 | コードの生成 | メンバーを委譲する
Alt+Insert | メンバーを委譲する
ReSharper_GenerateDelegating

ReSharperを使用すると、プライベートフィールドとプロパティを介して使用可能なパブリックメンバー(メソッドとプロパティ)に実行を委譲するメンバーをすばやく生成できます。つまり、包含型のプライベートフィールドまたはプロパティのインターフェースの目的の部分を公開します。

以下の例では、このコマンドを使用して、_center フィールドの委譲メンバーを生成します。

生成前

生成後

class Point { public Point(int x, int y) { X = x; Y = y; } public int X { get; } public int Y { get; } public void DoSomething() {} } class Circle { int _radius; Point _center; }
class Point { public Point(int x, int y) { X = x; Y = y; } public int X { get; } public int Y { get; } public void DoSomething() {} } class Circle { int _radius; Point _center; public int X { get { return _center.X; } } public int Y { get { return _center.Y; } } public void DoSomething() { _center.DoSomething(); } }

委譲メンバーを生成するには

  1. エディターで、委譲メンバーを挿入する行の型名または型内にキャレットを設定します。キャレットが型名にある場合、生成されたコードは型宣言の先頭に追加されます。

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

  3. 生成ポップアップで、メンバーを委譲するを選択します。

  4. 表示される生成ダイアログには、現在のタイプのプライベートプロパティとフィールドのリストが表示されます。これらのアイテムを展開して、そのメンバーのメンバーを表示することができます。これらの型メンバーの一部または全部を選択すると、ReSharperは選択された型メンバーに実行を委譲する現在の型のラッパーを生成します。

    Generating delegating members with ReSharper

  5. 完了をクリックしてウィザードを完了します。
    また、オプションをクリックすると、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 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 availableFeature is not available

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

最終更新日: 2020年1月17日

関連ページ:

異なる言語でのReSharperの機能

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

ASP.NET MVC特有の機能

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

言語によるReSharper: MSビルド

MSBuildは、アプリケーションを構築するために広く使用されているプラットフォームです。特定のXMLタグを使用して、プロジェクトの構築方法や実行方法を定義できます。ReSharperを使用すると、より速く行うことができます。ReSharperオプション(Alt+R,,O)のページのMSBuildと...

言語によるReSharper: Googleプロトコルバッファ (プロトブフ)

ReSharperは、Googleプロトコルバッファ(Protobuf)バージョン2.xおよび3.0の.protoファイルでIDEサポートを提供します。ReSharperオプション(Alt+R,,O)のページのプロトブフチェックボックスをオフにすることにより、.protoファイルのReSharper...

言語JSONによるReSharper

JSONとJSONスキーマのサポートは、現在のような基本的なようなものの範囲構文が強調表示のような、より洗練された機能には、(古いVisual Studioのバージョンを含む) のフォーマットとコードを再配置(たとえば、あなたの周囲のオブジェクトのプロパティまたは任意の選択を移動することができます)...

デコンストラクターを生成する

|デコンストラクタータプルの分解はC# 7.0の機能です。デフォルトでは、ReSharperは、関連するコンパイラーに基づいてC#バージョンを自動的に検出します。ただし、ターゲットC#バージョンを明示的に指定できます。ソリューションエクスプローラーでプロジェクトを右クリックし、コンテキストメニューか...