5

ReSharper がプロパティのプライベート読み取り専用バッキング フィールドを生成できるかどうかわからなかったので、それを実行できるカスタム スクリプトを定義する方法はありますか?

あなたが財産を持っていると想像してください

public Type PropertyName { get; set; }

次に、この行にカーソルを置き、 Alt+Enter を押すと、プロパティを次のように変換するメニュー項目が表示されます

private readonly Type propertyName;

public Type PropertyName { get { return propertyName; } }

私は実際にこれを何度も使用する状況に陥っています。

4

2 に答える 2

8

R# を使用すると、ライブ テンプレートを作成できます。この場合:

  1. ReSharper > テンプレート エクスプローラー
  2. [ライブ テンプレート] タブ > [新しいテンプレート] (小さなグリッド アイコン)
  3. ショートカット: propReadOnly (これはインテリセンスで使用されるショートカットになります)
  4. 説明:あなたのために働くものは何でも...
  5. 利用可能: 型メンバー宣言が許可されている C# 2.0 で
  6. テンプレートを次のように作成します。

    private readonly $Type$ $propertyName$;

    public $Type$ $PropertyName$ { get { return $propertyName$; } }

テキストを囲む$SomeText$と、そのテキストが R# で操作する変数として指定されます。

変数名パネルで:

Name             Value             Editable Occurence
Type             Choose Macro*     #2
PropertyName     Choose Macro*     checkbox is checked
propertyName     (see below)       not editable
                 Macro > - Value of annother variable with the first character in lower case
                         - Select "PropertyName" as the other variable

*Choose Macro is displayed when no macro is selected; this is the default setting

保存すると、使用したショートカット、つまり「propReadOnly」を入力して、Visual Studio でテンプレートをすぐに使用できます。

于 2013-11-01T18:51:49.053 に答える