プロパティの生成
ReSharper は、Exposed したいすべてのフィールドのプロパティを生成するのに役立ちます。
以下の例では、このコマンドを使用して、 _radius および _center フィールドのプロパティを生成します。
生成前 | 生成後 |
|---|---|
class Circle
{
int _radius;
readonly Point _center;
public Circle(int radius, Point center)
{
_radius = radius;
_center = center;
}
}
|
class Circle
{
int _radius;
readonly Point _center;
public int Radius
{
get { return _radius; }
set { _radius = value; }
}
public Point Center
{
get { return _center; }
}
public Circle(int radius, Point center)
{
_radius = radius;
_center = center;
}
}
|
選択したフィールドを公開するプロパティを生成する
エディターで、タイプ名またはタイプ内の、選択したフィールドを公開するプロパティを挿入する行にキャレットを置きます。 キャレットが型名上にある場合、生成されたコードは型宣言の先頭に追加されます。
Alt+Insert を押すか、メインメニューから を選択します。 あるいは、 Control+Shift+A を押して、ポップアップでコマンド名を入力して、そこで選択することもできます。
生成する ポップアップで、 プロパティ / 読み取り専用プロパティ を選択します。
表示される 生成する ダイアログで、プロパティを生成するフィールドを選択します。

必要に応じて、生成されたすべてのプロパティに適用される次のコントロールを使用します。
- アクセス権
生成されたプロパティのアクセス権修飾子を定義します。
- 読み取り専用
プロパティを読み取り専用として生成するかどうかを定義します。 自動 を選択すると、ReSharper は読み取り専用フィールドには getter のみを生成し、その他のフィールドには getter と setter の両方を生成します。
生成する ポップアップで 読み取り専用のプロパティ を選択した場合、セレクターは はい に設定されますが、必要に応じて変更できます。
- 仮想
(該当する場合)生成されたプロパティに
virtual修飾子を追加します。- プロパティの変更について通知する
(該当する場合)クラスが
INotifyPropertyChangedを実装している、またはプロパティ変更通知をサポートするクラス(例:Prism のNotificationObject)を継承しており、プロパティ変更を通知するメソッドに [NotifyPropertyChangedInvocator] 属性が付いている場合、プロパティ変更通知呼び出し付きでプロパティを実装できます。 詳細については、「INotifyPropertyChanged のサポート 」を参照してください。
完了 をクリックしてウィザードを完了します。
オプション をクリックすることで、ReSharper オプションの ページで一般的なコード生成の環境設定を確認または変更することもできます。
このコマンドは、元のフィールドをそのままにしてプロパティを生成します。 必要に応じて、任意のプロパティで Alt+Enter を押すことにより、生成されたプロパティを自動実装プロパティに変換できます。

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