ConstructorInfo.Invoke メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
このインスタンスによって反映されるコンストラクターを呼び出します。
オーバーロード
| 名前 | 説明 |
|---|---|
| Invoke(Object[]) |
指定したパラメーターを持つインスタンスによって反映されるコンストラクターを呼び出し、一般的に使用されないパラメーターの既定値を指定します。 |
| Invoke(BindingFlags, Binder, Object[], CultureInfo) |
派生クラスで実装されている場合は、指定した |
Invoke(Object[])
指定したパラメーターを持つインスタンスによって反映されるコンストラクターを呼び出し、一般的に使用されないパラメーターの既定値を指定します。
public:
virtual System::Object ^ Invoke(cli::array <System::Object ^> ^ parameters);
public:
System::Object ^ Invoke(cli::array <System::Object ^> ^ parameters);
public virtual object Invoke(object[] parameters);
public object Invoke(object?[]? parameters);
public object Invoke(object[] parameters);
override this.Invoke : obj[] -> obj
Public Overridable Function Invoke (parameters As Object()) As Object
Public Function Invoke (parameters As Object()) As Object
パラメーター
- parameters
- Object[]
このコンストラクターのパラメーターの数、順序、型 (既定のバインダーの制約下) に一致する値の配列。 このコンストラクターがパラメーターを受け取っていない場合は、Object[] パラメーター = new Object[0] のように、要素が 0 の配列または nullを使用します。 値で明示的に初期化されていないこの配列内のオブジェクトには、そのオブジェクト型の既定値が含まれます。 参照型の要素の場合、この値は null。 値型要素の場合、この値は、特定の要素の種類に応じて 0、0.0、または falseです。
返品
コンストラクターに関連付けられているクラスのインスタンス。
例外
コンストラクターはプライベートまたは保護されており、呼び出し元に MemberAccessがありません。
parameters配列には、このコンストラクターで受け入れられる型と一致する値が含まれていません。
呼び出されたコンストラクターは例外をスローします。
正しくない数のパラメーターが渡されました。
TypedReference、ArgIterator、およびRuntimeArgumentHandle型の作成はサポートされていません。
呼び出し元には、必要なコード アクセス許可がありません。
注釈
parameters配列内の要素の数、型、順序は、このインスタンスによって反映されるコンストラクターのパラメーターの数、型、順序と同じである必要があります。 コンストラクターを呼び出す前に、 Invoke 呼び出し元がアクセス許可を持っていることを確認し、パラメーターが有効であることを確認します。
完全に信頼されたコードでは、アクセス制限は無視されます。 つまり、プライベート コンストラクター、メソッド、フィールド、およびプロパティは、コードが完全に信頼されるたびにリフレクションを使用してアクセスおよび呼び出すことができます。
Note
インスタンス コンストラクターがない値型のインスタンスを作成するには、 CreateInstance メソッドを使用します。
このメソッドは、既定値を使用して、次のオーバーロードされたバージョンの便利なメソッドです。 このメソッドはオーバーライドできません。
Note
このメソッドを使用すると、呼び出し元が ReflectionPermission フラグを持つReflectionPermissionFlag.RestrictedMemberAccessを許可されている場合、および非パブリック メンバーの許可セットが呼び出し元の許可セットまたはそのサブセットに制限されている場合に、非パブリック メンバーにアクセスできます。 ( リフレクションのセキュリティに関する考慮事項を参照してください)。
適用対象
Invoke(BindingFlags, Binder, Object[], CultureInfo)
派生クラスで実装されている場合は、指定したBinderの制約の下で、指定した引数を使用して、このConstructorInfoによって反映されるコンストラクターを呼び出します。
public:
abstract System::Object ^ Invoke(System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ parameters, System::Globalization::CultureInfo ^ culture);
public abstract object Invoke(System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder? binder, object?[]? parameters, System.Globalization.CultureInfo? culture);
public abstract object Invoke(System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, object[] parameters, System.Globalization.CultureInfo culture);
override this.Invoke : System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo -> obj
Public MustOverride Function Invoke (invokeAttr As BindingFlags, binder As Binder, parameters As Object(), culture As CultureInfo) As Object
パラメーター
- invokeAttr
- BindingFlags
バインディングの種類を指定する BindingFlags 値の 1 つ。
- binder
- Binder
プロパティのセットを定義し、リフレクションを使用してバインディング、引数型の強制化、メンバーの呼び出しを有効にする Binder 。
binderがnullされている場合は、Binder.DefaultBindingが使用されます。
- parameters
- Object[]
型の配列Objectbinderの制約の下で、このコンストラクターのパラメーターの数、順序、および型と一致するために使用されます。 このコンストラクターにパラメーターが必要ない場合は、Object[] parameters = new Object[0] のように、要素が 0 の配列を渡します。 値で明示的に初期化されていないこの配列内のオブジェクトには、そのオブジェクト型の既定値が含まれます。 参照型の要素の場合、この値は null。 値型要素の場合、この値は、特定の要素の種類に応じて 0、0.0、または falseです。
- culture
- CultureInfo
型の強制型の制御に使用される CultureInfo 。 これが nullの場合は、現在のスレッドの CultureInfo が使用されます。
返品
コンストラクターに関連付けられているクラスのインスタンス。
例外
parameters配列には、binderの制約の下で、このコンストラクターで受け入れられる型と一致する値が含まれていません。
呼び出されたコンストラクターは例外をスローします。
正しくない数のパラメーターが渡されました。
TypedReference、ArgIterator、およびRuntimeArgumentHandle型の作成はサポートされていません。
呼び出し元には、必要なコード アクセス許可がありません。
コンストラクターはプライベートまたは保護されており、呼び出し元に MemberAccessがありません。
注釈
parameters配列内の要素の数、型、順序は、このインスタンスによって反映されるコンストラクターのパラメーターの数、型、順序と同じである必要があります。
コンストラクターを呼び出す前に、 Invoke 呼び出し元がアクセス許可を持ち、パラメーターが正しい番号、順序、型であることを確認します。
完全に信頼されたコードでは、アクセス制限は無視されます。 つまり、プライベート コンストラクター、メソッド、フィールド、およびプロパティは、コードが完全に信頼されるたびにリフレクションを使用してアクセスおよび呼び出すことができます。
Note
インスタンス コンストラクターがない値型のインスタンスを作成するには、 CreateInstance メソッドを使用します。
Note
このメソッドを使用すると、呼び出し元が ReflectionPermission フラグを持つReflectionPermissionFlag.RestrictedMemberAccessを許可されている場合、および非パブリック メンバーの許可セットが呼び出し元の許可セットまたはそのサブセットに制限されている場合に、非パブリック メンバーにアクセスできます。 (「リフレクションのセキュリティに関する考慮事項」を参照してください>)。この機能を使用するには、アプリケーションで Framework 3.5 以降.NETターゲットにする必要があります。