共用方式為


ConstructorBuilder.Invoke 方法

定義

叫用此執行個體動態反映的建構函式。

多載

Invoke(BindingFlags, Binder, Object[], CultureInfo)

動態叫用這個執行個體在指定物件上代表的建構函式,並與指定參數一併依指定繫結器的條件約束傳遞。

Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)

在指定的 Binder 條件約束下,動態叫用這個執行個體與指定引數反映的建構函式。

Invoke(BindingFlags, Binder, Object[], CultureInfo)

來源:
ConstructorBuilder.cs

動態叫用這個執行個體在指定物件上代表的建構函式,並與指定參數一併依指定繫結器的條件約束傳遞。

public:
 override System::Object ^ Invoke(System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ parameters, System::Globalization::CultureInfo ^ culture);
public override object Invoke (System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder? binder, object?[]? parameters, System.Globalization.CultureInfo? culture);
public override 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 Overrides Function Invoke (invokeAttr As BindingFlags, binder As Binder, parameters As Object(), culture As CultureInfo) As Object

參數

invokeAttr
BindingFlags

這必須是來自 BindingFlags 的位元旗標,例如 InvokeMethod、NonPublic 等等。

binder
Binder

使用反映來啟用繫結、強制引數的類型、成員的引動過程,和擷取 MemberInfo 物件的物件。 如果繫結器為 null,則會使用預設繫結器。 請參閱 Binder

parameters
Object[]

引數清單。 這是引數陣列,其數目、順序和類型與要叫用的建構函式參數相同。 如果沒有任何參數,則這應該是 null

culture
CultureInfo

CultureInfo 的執行個體,用於管理類型的強制型轉。 如果這是 null,會使用目前執行緒的 CultureInfo。 (例如,要將代表 1000 的 String 轉換成 Double 值時,這是必要的,因為 1000 的表示方式會因不同文化特性而有所不同)。

傳回

叫用的建構函式所傳回的值。

例外狀況

備註

如果建構函式沒有參數,參數 parameters 的值應該是 null。 否則,陣列中 parameters 元素的數目、類型和順序應該與這個實例反映之建構函式的參數數目、類型和順序相同。

例如,如果這個實例反映的建構函式宣告為採用兩個字串的公用類別,則 parameters 參數應該是長度為2的 Object 陣列。

注意

完全信任的程式代碼會忽略存取限制。 也就是說,每當程序代碼完全信任時,可以使用 Reflection 來存取和叫用私人建構函式、方法、字段和屬性。

另請參閱

適用於

Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)

來源:
ConstructorBuilder.cs

在指定的 Binder 條件約束下,動態叫用這個執行個體與指定引數反映的建構函式。

public:
 override System::Object ^ Invoke(System::Object ^ obj, System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ parameters, System::Globalization::CultureInfo ^ culture);
public override object Invoke (object? obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder? binder, object?[]? parameters, System.Globalization.CultureInfo? culture);
public override object Invoke (object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, object[] parameters, System.Globalization.CultureInfo culture);
override this.Invoke : obj * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo -> obj
Public Overrides Function Invoke (obj As Object, invokeAttr As BindingFlags, binder As Binder, parameters As Object(), culture As CultureInfo) As Object

參數

obj
Object

必須重新初始化的物件。

invokeAttr
BindingFlags

其中一個 BindingFlags 值指定想要的繫結類型。

binder
Binder

Binder,會使用反映定義一組屬性和啟用繫結、引數類型強制型轉和成員引動過程。 如果 bindernull,則會使用 Binder.DefaultBinding。

parameters
Object[]

引數清單。 這是引數陣列,其數目、順序和類型與要叫用的建構函式參數相同。 如果沒有任何參數,則這應該是 null 參考 (在 Visual Basic 中為 Nothing)。

culture
CultureInfo

CultureInfo,用來管理類型的強制型轉。 如果這是 null,會使用目前執行緒的 CultureInfo

傳回

與建構函式相關聯的類別之執行個體。

例外狀況

備註

參數陣列中元素的數目、類型和順序應該與這個實例所反映之建構函式的參數數目、類型和順序相同。

呼叫建構函式之前, Invoke 請確定呼叫端具有訪問許可權,而且參數為正確的數位、順序和類型。

完全信任的程式代碼會忽略存取限制。 也就是說,每當程序代碼完全信任時,可以使用 Reflection 來存取和叫用私人建構函式、方法、字段和屬性。

另請參閱

適用於