型コンストラクターを生成する
コンストラクター生成ウィザードは、選択されたフィールド、プロパティ、自動プロパティのパラメーターを取るデフォルト以外のコンストラクターを作成します。
生成されたコンストラクターはすべて同じパターンに従います。
コンストラクターに含まれる各フィールド、プロパティ、自動プロパティは、パラメーターで初期化されます。
パラメーターの名前は、対応するフィールドまたはプロパティの名前から導出されます。
デフォルト以外の基本型コンストラクターがある場合、必要なパラメーターが生成されたコンストラクターに追加され、基本クラスコンストラクターに渡されます。
以下の例では、このコマンドを使用して、_radius および _center フィールドを初期化するための 2 つの追加パラメーターを取る新しい Circle コンストラクターを生成します。
生成前 | 生成後 |
|---|---|
class Shape
{
public Shape(Color color)
{ Color = color; }
public Color Color { get; }
}
class Circle : Shape
{
int _radius;
Point _center;
string _id;
public Circle(Color color) : base(color)
{
}
}
|
class Shape
{
public Shape(Color color)
{ Color = color; }
public Color Color { get; }
}
class Circle : Shape
{
int _radius;
Point _center;
string _id;
public Circle(Color color) : base(color)
{
}
public Circle(Color color,
int radius, Point center, string id) : base(color)
{
_radius = radius;
_center = center;
_id = id;
}
}
|
コンストラクターを生成する
エディターで、コンストラクターを挿入する行の型名または型内の行にキャレットを置きます。キャレットが型名上にある場合、生成されたコードは型宣言の先頭に追加されます。
Alt+Insert を押すか、メインメニューから を選択します。あるいは、Control+Shift+A を押して、ポップアップでコマンド名を入力して、そこで選択することもできます。
生成ポップアップで、コンストラクターを選択します。
表示される生成ダイアログで、新しいコンストラクターで初期化する必要のあるメンバーを選択します。必要に応じて、1 つまたは複数の基本クラスのコンストラクターを選択します。選択されたすべてのベースコンストラクターに対して、ベースを呼び出し、選択されたメンバーを追加で初期化する新しいコンストラクターが生成されます。

必要に応じて、ダイアログで次のコントロールを使用します。
アクセス権 — 生成されたコンストラクターのアクセス権を定義できます。
null のパラメーターを確認する(クラスに nullable 型のフィールドまたはプロパティがある場合に表示されます) — このチェックボックスが選択されている場合、ReSharper は各 nullable パラメーターに対して設定可能な null チェックを生成します。例:
if (param == null) throw new ArgumentNullException(nameof(param));パラメーターをオプションにする — このチェックボックスが選択されている場合、ReSharper は、生成されたコンストラクターのすべてのパラメーターをオプションにし、パラメーターの型に対応するデフォルト値を追加します。
完了をクリックしてウィザードを完了します。
オプションをクリックして、ReSharper オプションのページで一般的なコード生成設定を確認または変更することもできます。
この機能は、次の言語とテクノロジーでサポートされています。
ここで説明する手順と例では、C# の機能の使用について説明します。他の言語の詳細については、言語およびフレームワークセクションの対応するトピックを参照してください。
関連ページ:
null チェックルーチンを生成する
ReSharper には、値型のパラメーター、式、null の変数をチェックするコードを生成するためのさまざまな方法が用意されています。目的に応じて、null チェックルーチンは 2 つのカテゴリに分けられます:null は例外とアサーションをチェックする、null 値を持つオブジェクトをスキップするための null チェック、null は例外とアサーションをチェックする:参照であるオブジェクトに遭遇することがプログラムで重大であり、例外をスローすることによってログに記録されるか、シグナルが通...
さまざまな言語の ReSharper 機能
以下の表は、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 は、選択したフィールドとプロパティを使用して、関係演算子と関連するインターフェースの実装を自動的にオーバーロードできます。デフォルトでは、ReSharper はの実装を作成し、オプションで、演算子、、との実装も生成されます。以下の例では、このコマンドを使用して、クラスのオブジェクトを比較するときにおよびフィールドを考慮に入れた関係メンバーを生成します。class Person { private int _birthYear; private string _name; }c...