共用方式為


MethodInfo 類別

定義

發現方法屬性並提供方法元資料存取。

public ref class MethodInfo abstract : System::Reflection::MethodBase
public ref class MethodInfo abstract : System::Reflection::MethodBase, System::Runtime::InteropServices::_MethodInfo
public abstract class MethodInfo : System.Reflection.MethodBase
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
public abstract class MethodInfo : System.Reflection.MethodBase, System.Runtime.InteropServices._MethodInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class MethodInfo : System.Reflection.MethodBase, System.Runtime.InteropServices._MethodInfo
type MethodInfo = class
    inherit MethodBase
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
type MethodInfo = class
    inherit MethodBase
    interface _MethodInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type MethodInfo = class
    inherit MethodBase
    interface _MethodInfo
Public MustInherit Class MethodInfo
Inherits MethodBase
Public MustInherit Class MethodInfo
Inherits MethodBase
Implements _MethodInfo
繼承
衍生
屬性
實作

備註

MethodInfo 類別代表一種類型的方法。 你可以使用物件 MethodInfo 來取得該物件所代表的方法資訊並呼叫該方法。 例如:

你可以透過呼叫 Type.GetMethods or 方法,或呼叫MethodInfo.MakeGenericMethod代表一般方法定義的物件的方法MethodInfo來實例化實MethodInfoType.GetMethod例。

關於通用方法專有項不變條件的列表,請參見性質。IsGenericMethod 關於一般反射中其他術語不變條件的列表,請參見性質。IsGenericType

給實施者的注意事項

當你從 繼承 MethodInfo時,必須覆寫 GetBaseDefinition()ReturnTypeReturnTypeCustomAttributesGetMethodImplementationFlags()ReflectedTypeDeclaringTypeGetCustomAttributes(Boolean)GetCustomAttributes(Type, Boolean)GetParameters()AttributesIsDefined(Type, Boolean)MethodHandleInvoke(Object, BindingFlags, Binder, Object[], CultureInfo)NameMemberType從 。

建構函式

名稱 Description
MethodInfo()

初始化 MethodInfo 類別的新執行個體。

屬性

名稱 Description
Attributes

取得與此方法相關的屬性。

(繼承來源 MethodBase)
CallingConvention

會得到一個值,表示此方法的呼叫慣例。

(繼承來源 MethodBase)
ContainsGenericParameters

會得到一個值,表示某個通用方法是否包含未指派的通用型別參數。

ContainsGenericParameters

會取得一個值,表示通用方法是否包含未指派的通用型別參數。

(繼承來源 MethodBase)
CustomAttributes

會獲得包含該成員自訂屬性的集合。

(繼承來源 MemberInfo)
DeclaringType

會得到宣告該成員的類別。

(繼承來源 MemberInfo)
IsAbstract

會得到一個值,表示該方法是否為抽象。

(繼承來源 MethodBase)
IsAssembly

獲得一個值,表示此方法或建構子的潛在可見性是否由 Assembly描述;也就是說,該方法或建構器最多對同一組裝中的其他型別可見,對組裝外的衍生型別則無法看到。

(繼承來源 MethodBase)
IsCollectible

獲得一個值,表示該 MemberInfo 物件是否參考收藏品 AssemblyLoadContext中一個或多個組件。

(繼承來源 MemberInfo)
IsConstructedGenericMethod

發現方法屬性並提供方法元資料存取。

(繼承來源 MethodBase)
IsConstructor

會得到一個值,表示該方法是否為建構子。

(繼承來源 MethodBase)
IsFamily

獲得一個值,表示此方法或建構子的可見性是否由 Family描述;也就是說,該方法或建構子僅在其類別及其衍生類別中可見。

(繼承來源 MethodBase)
IsFamilyAndAssembly

會得到一個值,表示此方法或建構子的可見性是否由 FamANDAssem描述;也就是說,該方法或建構子可以被導出類別呼叫,但前提是它們位於同一組建構中。

(繼承來源 MethodBase)
IsFamilyOrAssembly

會得到一個值,表示此方法或建構子的潛在可見性是否由 FamORAssem描述;也就是說,該方法或建構子可以被派生類別呼叫,無論它們所在的位置,或同一組合語言中的類別。

(繼承來源 MethodBase)
IsFinal

得到一個值,表示此方法是否為 final

(繼承來源 MethodBase)
IsGenericMethod

會得到一個值,表示目前的方法是否屬於通用方法。

IsGenericMethod

會得到一個值,表示該方法是否為通用。

(繼承來源 MethodBase)
IsGenericMethodDefinition

會得到一個值,表示電流 MethodInfo 是否代表一般方法的定義。

IsGenericMethodDefinition

會得到一個值,表示該方法是否為一般方法定義。

(繼承來源 MethodBase)
IsHideBySig

會得到一個值,表示導出類別中是否只有同類型且簽名完全相同的成員被隱藏。

(繼承來源 MethodBase)
IsPrivate

會獲得一個值,表示該成員是否為私人。

(繼承來源 MethodBase)
IsPublic

會有一個值來表示這是否是一個公開方法。

(繼承來源 MethodBase)
IsSecurityCritical

會獲得一個值,表示目前的方法或建構子在當前信任層級下是安全關鍵還是安全關鍵,因此可以執行關鍵操作。

(繼承來源 MethodBase)
IsSecuritySafeCritical

獲得一個值,表示目前的方法或建構子在當前信任層級是否為安全關鍵;也就是說,它是否能執行關鍵操作,且是否能被透明程式碼存取。

(繼承來源 MethodBase)
IsSecurityTransparent

會獲得一個值,表示目前的方法或建構子在目前信任層級是否透明,因此無法執行關鍵操作。

(繼承來源 MethodBase)
IsSpecialName

會得到一個值,表示此方法是否有特殊名稱。

(繼承來源 MethodBase)
IsStatic

獲得一個值,表示該方法是否為 static

(繼承來源 MethodBase)
IsVirtual

獲得一個值,表示該方法是否為 virtual

(繼承來源 MethodBase)
MemberType

會得到 MemberTypes 一個值,表示該成員是一個方法。

MetadataToken

會得到一個識別元資料元素的值。

(繼承來源 MemberInfo)
MethodHandle

取得方法內部元資料表示的句柄。

(繼承來源 MethodBase)
MethodImplementationFlags

取得 MethodImplAttributes 指定方法實作屬性的旗標。

(繼承來源 MethodBase)
Module

取得定義宣告電流所代表 MemberInfo 成員型態的模組。

(繼承來源 MemberInfo)
Name

會取得現任成員的名字。

(繼承來源 MemberInfo)
ReflectedType

取得用來取得此實例 MemberInfo的類別物件。

(繼承來源 MemberInfo)
ReturnParameter

取得 ParameterInfo 一個包含方法回傳類型資訊的物件,例如該回傳類型是否有自訂修飾符。

ReturnType

取得此方法的回傳類型。

ReturnTypeCustomAttributes

取得返回型態的自訂屬性。

方法

名稱 Description
CreateDelegate(Type, Object)

從此方法建立指定類型的代理,並以指定目標為目標。

CreateDelegate(Type)

從此方法建立指定類型的代理。

CreateDelegate<T>()

從此方法建立 型別 T 的代理。

CreateDelegate<T>(Object)

從此方法建立一個 為 的 T 代理,並以指定目標為目標。

Equals(Object)

傳回值,這個值表示這個實例是否等於指定的物件。

GetBaseDefinition()

當在派生類別中覆寫時,會回傳 MethodInfo 該方法在該實例首次宣告的直接或間接基底類別上的方法物件。

GetCustomAttributes(Boolean)

當在衍生類別中覆寫時,會回傳一個包含所有套用於該成員的自訂屬性陣列。

(繼承來源 MemberInfo)
GetCustomAttributes(Type, Boolean)

當在派生類別中覆寫時,會回傳一套套用於該成員並由 識別的 Type自訂屬性陣列。

(繼承來源 MemberInfo)
GetCustomAttributesData()

回傳一份物件清單 CustomAttributeData ,代表已套用於目標成員的屬性資料。

(繼承來源 MemberInfo)
GetGenericArguments()

回傳一個物件陣列 Type ,代表一般方法的型別參數或一般方法定義的型別參數。

GetGenericMethodDefinition()

回傳一個 MethodInfo 代表通用方法定義的物件,可用來構建目前的方法。

GetHashCode()

傳回這個實例的哈希碼。

GetMethodBody()

當在衍生類別中覆寫時,會獲得 MethodBody 一個物件,提供存取 MSIL 串流、本地變數及當前方法例外的存取權。

(繼承來源 MethodBase)
GetMethodImplementationFlags()

當在衍生類別中被覆寫時,會回傳旗 MethodImplAttributes 標。

(繼承來源 MethodBase)
GetParameters()

當在派生類別中覆寫時,會取得指定方法或建構子的參數。

(繼承來源 MethodBase)
GetType()

發現方法屬性並提供方法元資料存取。

HasSameMetadataDefinitionAs(MemberInfo)

發現方法屬性並提供方法元資料存取。

(繼承來源 MemberInfo)
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)

當在導出類別中被覆寫時,會呼叫反映的方法或構造子,並以給定參數進行。

(繼承來源 MethodBase)
Invoke(Object, Object[])

呼叫目前實例所代表的方法或建構子,使用指定的參數。

Invoke(Object, Object[])

呼叫目前實例所代表的方法或建構子,使用指定的參數。

(繼承來源 MethodBase)
IsDefined(Type, Boolean)

當在派生類別中覆寫時,表示是否套用指定類型或其衍生型別的一個或多個屬性給該成員。

(繼承來源 MemberInfo)
MakeGenericMethod(Type[])

將型別陣列中的元素替換為目前通用方法定義的型別參數,並回傳 MethodInfo 一個代表所建構方法的物件。

MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)

操作員

名稱 Description
Equality(MethodInfo, MethodInfo)

表示兩個 MethodInfo 物體是否相等。

Inequality(MethodInfo, MethodInfo)

表示兩個 MethodInfo 物體是否不相等。

明確介面實作

名稱 Description
_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。

(繼承來源 MemberInfo)
_MemberInfo.GetType()

取得 Type 一個代表該類別的 MemberInfo 物件。

(繼承來源 MemberInfo)
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

擷取物件的類型資訊,可以用來取得介面的類型資訊。

(繼承來源 MemberInfo)
_MemberInfo.GetTypeInfoCount(UInt32)

擷取物件提供的類型資訊介面數目 (0 或 1)。

(繼承來源 MemberInfo)
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

提供物件所公開屬性和方法的存取權。

(繼承來源 MemberInfo)
_MethodBase.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。

(繼承來源 MethodBase)
_MethodBase.GetType()

關於此成員的描述,請參見 GetType()

(繼承來源 MethodBase)
_MethodBase.GetTypeInfo(UInt32, UInt32, IntPtr)

擷取物件的類型資訊,可以用來取得介面的類型資訊。

(繼承來源 MethodBase)
_MethodBase.GetTypeInfoCount(UInt32)

擷取物件提供的類型資訊介面數目 (0 或 1)。

(繼承來源 MethodBase)
_MethodBase.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

提供物件所公開屬性和方法的存取權。

(繼承來源 MethodBase)
_MethodBase.IsAbstract

關於此成員的描述,請參見 IsAbstract

(繼承來源 MethodBase)
_MethodBase.IsAssembly

關於此成員的描述,請參見 IsAssembly

(繼承來源 MethodBase)
_MethodBase.IsConstructor

關於此成員的描述,請參見 IsConstructor

(繼承來源 MethodBase)
_MethodBase.IsFamily

關於此成員的描述,請參見 IsFamily

(繼承來源 MethodBase)
_MethodBase.IsFamilyAndAssembly

關於此成員的描述,請參見 IsFamilyAndAssembly

(繼承來源 MethodBase)
_MethodBase.IsFamilyOrAssembly

關於此成員的描述,請參見 IsFamilyOrAssembly

(繼承來源 MethodBase)
_MethodBase.IsFinal

關於此成員的描述,請參見 IsFinal

(繼承來源 MethodBase)
_MethodBase.IsHideBySig

關於此成員的描述,請參見 IsHideBySig

(繼承來源 MethodBase)
_MethodBase.IsPrivate

關於此成員的描述,請參見 IsPrivate

(繼承來源 MethodBase)
_MethodBase.IsPublic

關於此成員的描述,請參見 IsPublic

(繼承來源 MethodBase)
_MethodBase.IsSpecialName

關於此成員的描述,請參見 IsSpecialName

(繼承來源 MethodBase)
_MethodBase.IsStatic

關於此成員的描述,請參見 IsStatic

(繼承來源 MethodBase)
_MethodBase.IsVirtual

關於此成員的描述,請參見 IsVirtual

(繼承來源 MethodBase)
_MethodInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。

_MethodInfo.GetType()

提供從 COM 存取 GetType() 該方法的存取。

_MethodInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

擷取 物件的型別資訊,可用來取得介面的類型資訊。

_MethodInfo.GetTypeInfoCount(UInt32)

擷取物件提供的類型資訊介面數目 (0 或 1)。

_MethodInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

提供物件所公開屬性和方法的存取權。

ICustomAttributeProvider.GetCustomAttributes(Boolean)

回傳該成員上所有自訂屬性的陣列(不含命名屬性),若無自訂屬性則回傳空陣列。

(繼承來源 MemberInfo)
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean)

回傳一個定義在此成員上的自訂屬性陣列,依類型識別;若該類型沒有自訂屬性,則回傳空陣列。

(繼承來源 MemberInfo)
ICustomAttributeProvider.IsDefined(Type, Boolean)

表示該成員是否定義了一個或多個 的 attributeType 實例。

(繼承來源 MemberInfo)

擴充方法

名稱 Description
GetBaseDefinition(MethodInfo)

發現方法屬性並提供方法元資料存取。

GetCustomAttribute(MemberInfo, Type, Boolean)

擷取指定類型的自訂屬性,套用於指定成員,並可選擇性地檢查該成員的祖先。

GetCustomAttribute(MemberInfo, Type)

擷取指定型別的自訂屬性,套用到指定成員。

GetCustomAttribute<T>(MemberInfo, Boolean)

擷取指定類型的自訂屬性,套用於指定成員,並可選擇性地檢查該成員的祖先。

GetCustomAttribute<T>(MemberInfo)

擷取指定型別的自訂屬性,套用到指定成員。

GetCustomAttributes(MemberInfo, Boolean)

擷取一套套用於指定成員的自訂屬性,並可選擇性地檢查該成員的祖先。

GetCustomAttributes(MemberInfo, Type, Boolean)

擷取一組指定類型的自訂屬性,套用於指定成員,並可選擇性檢查該成員的祖先。

GetCustomAttributes(MemberInfo, Type)

擷取一組指定類型的自訂屬性,套用到指定成員。

GetCustomAttributes(MemberInfo)

擷取一套套用於指定成員的自訂屬性集合。

GetCustomAttributes<T>(MemberInfo, Boolean)

擷取一組指定類型的自訂屬性,套用於指定成員,並可選擇性檢查該成員的祖先。

GetCustomAttributes<T>(MemberInfo)

擷取一組指定類型的自訂屬性,套用到指定成員。

GetMetadataToken(MemberInfo)

如果有的話,會獲得該成員的元資料標記。

GetRuntimeBaseDefinition(MethodInfo)

擷取代表指定方法的物件,該物件在直接或間接基底類別中,該方法首次宣告該類別。

HasMetadataToken(MemberInfo)

回傳一個值,表示指定成員是否有可用的元資料標記。

IsDefined(MemberInfo, Type, Boolean)

表示是否將特定類型的自訂屬性套用於指定成員,並可選擇套用於其祖先。

IsDefined(MemberInfo, Type)

表示是否套用特定類型的自訂屬性給指定成員。

適用於

執行緒安全性

此類型是安全線程。

另請參閱