MethodBuilder.Invoke 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
動態地在給定物件上呼叫此實例所反映的方法,傳遞指定的參數,並在給定綁定器的限制下傳遞。
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);
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 : InvokeMethod, NonPublic, 等的 flag。
- parameters
- Object[]
一份論點清單。 這是一個參數陣列,其數量、順序和型別與要調用的方法的參數相同。 若無參數,則應為 null。
- culture
- CultureInfo
一個用來規範類型強制的實例 CultureInfo 。 若為空,則使用 當前執行緒的 。CultureInfo (請注意,例如將代表 1000 的 a String 轉換成 Double 一個值是必要的,因為不同文化中 1000 的表示方式不同。)
傳回
回傳包含所調用方法回傳值的物件。
例外狀況
此方法目前尚未支援。 用 取得 GetMethod(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) 方法,並呼叫 InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) 返回 MethodInfo的 。
備註
若方法為靜態,則忽略該 obj 參數。 對於非靜態方法,應該 obj 是繼承或宣告該方法的類別實例,且必須與該類別相同型別。 若方法無參數,則 的 parameters 值應為 null。 否則參數陣列中元素的數量、類型與順序應與本實例所反映的方法參數數量、類型及順序相同。
Note
完全信任的程式碼會忽略存取限制。 也就是說,只要程式碼完全信任,私有建構子、方法、欄位和屬性都可以透過 Reflection 存取並呼叫。