共用方式為


MethodBuilder.Invoke 方法

定義

動態叫用這個執行個體在指定物件上反映的方法,沿著指定參數,在指定繫結器的條件約束下傳遞。

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 的位元旗標:InvokeMethodNonPublic 等。

binder
Binder

此物件能用來啟用繫結、引數的強制型轉、成員的引動過程,以及透過反映來擷取 MemberInfo 物件等功能。 如果繫結器為 null,則會使用預設繫結器。 如需詳細資訊,請參閱 Binder

parameters
Object[]

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

culture
CultureInfo

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

傳回

傳回包含已叫用方法之傳回值的物件。

例外狀況

備註

如果方法是靜態的,則會 obj 忽略 參數。 對於非靜態方法,應該是繼承或宣告方法之類別的實例, obj 而且類型必須與這個類別相同。 如果方法沒有參數,則的值 parameters 應該是 null。 否則,參數陣列中元素的數目、類型和順序應該與這個實例所反映之方法的參數數目、類型和順序相同。

注意

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

適用於