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 получения сведений о методе, который представляет объект , и для вызова метода . Пример:
Видимость метода можно определить, извлекая значения IsFamilyAndAssemblyсвойств , IsFamilyOrAssembly, IsPrivateи IsPublic .
Чтобы узнать, какие атрибуты применяются к методу, можно получить значение Attributes свойства или вызвать GetCustomAttributes метод .
Можно определить, является ли метод универсальным, открытым или закрытым, сконструированным универсальным методом, путем получения значений IsGenericMethod свойств и ContainsGenericParameters .
Сведения о параметрах метода и типе возвращаемого значения можно получить из GetParameters метода и ReturnParameterсвойств , ReturnTypeи ReturnTypeCustomAttributes .
Метод можно выполнить в экземпляре класса, вызвав Invoke метод .
Можно создать MethodInfo экземпляр объекта , представляющего сконструированный универсальный метод из того, который представляет определение универсального MakeGenericMethod метода, вызвав метод .
Экземпляры можно создать MethodInfo , вызвав Type.GetMethods метод или Type.GetMethod или вызвав MethodInfo.MakeGenericMethod метод объекта , который представляет определение универсального MethodInfo метода.
Список инвариантных условий для терминов, относящихся к универсальным методам, см. в свойстве IsGenericMethod . Список инвариантных условий для других терминов, используемых в универсальном отражении, см. в свойстве IsGenericType .
Примечания для тех, кто реализует этот метод
При наследовании от MethodInfoнеобходимо переопределить GetBaseDefinition(), ReturnType, ReturnTypeCustomAttributes, GetParameters(), GetMethodImplementationFlags()MethodHandleAttributesInvoke(Object, BindingFlags, Binder, Object[], CultureInfo), Name, MemberType, DeclaringType, , ReflectedType, GetCustomAttributes(Boolean), GetCustomAttributes(Type, Boolean), и .IsDefined(Type, Boolean)
Конструкторы
MethodInfo() |
Инициализирует новый экземпляр класса MethodInfo. |
Свойства
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 |
Возвращает значение, указывающее, является ли метод |
IsGenericMethod |
Возвращает значение, которое указывает, является ли текущий метод универсальным. |
IsGenericMethod |
Возвращает значение, указывающее, является ли этот метод универсальным. (Унаследовано от MethodBase) |
IsGenericMethodDefinition |
Возвращает значение, указывающее, представляет ли текущий объект MethodInfo определение универсального метода. |
IsGenericMethodDefinition |
Возвращает значение, указывающее, является ли этот метод определением универсального метода. (Унаследовано от MethodBase) |
IsHideBySig |
Возвращает значение, указывающее, скрывается ли в производном классе только член такого же вида с точно такой же сигнатурой. (Унаследовано от MethodBase) |
IsPrivate |
Возвращает значение, указывающее, является ли этот член закрытым. (Унаследовано от MethodBase) |
IsPublic |
Возвращает значение, указывающее, является ли метод открытым. (Унаследовано от MethodBase) |
IsSecurityCritical |
Получает значение, которое указывает, является ли текущий метод или конструктор критически важным для безопасности или защищенным критически важным для безопасности на данном уровне доверия и, следовательно, может ли он выполнять критические операции. (Унаследовано от MethodBase) |
IsSecuritySafeCritical |
Получает значение, которое указывает, является ли текущий динамический метод или конструктор защищенным критически важным для безопасности и, следовательно, может ли он выполнять критические операции и предоставлять доступ прозрачному коду. (Унаследовано от MethodBase) |
IsSecurityTransparent |
Получает значение, которое указывает, является ли текущий метод или конструктор прозрачным на текущем уровне доверия и, следовательно, не может выполнять критические операции. (Унаследовано от MethodBase) |
IsSpecialName |
Возвращает значение, указывающее, имеет ли этот метод специальное имя. (Унаследовано от MethodBase) |
IsStatic |
Получает значение, указывающее, имеет ли метод значение |
IsVirtual |
Получает значение, указывающее, имеет ли метод значение |
MemberType |
Возвращает значение MemberTypes, указывающее, что этот элемент является методом. |
MemberType |
При переопределении в производном классе получает значение MemberTypes, определяющее тип члена: метод, конструктор, событие и так далее. (Унаследовано от MemberInfo) |
MetadataToken |
Получает значение, определяющее элемент метаданных. (Унаследовано от MemberInfo) |
MethodHandle |
Возвращает дескриптор представления внутренних метаданных метода. (Унаследовано от MethodBase) |
MethodImplementationFlags |
Получает флаги MethodImplAttributes, указывающие атрибуты реализации методы. (Унаследовано от MethodBase) |
Module |
Получает модуль, в котором определяется тип, объявляющий член, представленный текущим объектом MemberInfo. (Унаследовано от MemberInfo) |
Name |
Возвращает имя текущего члена. (Унаследовано от MemberInfo) |
ReflectedType |
Получает объект класса, который использовался для извлечения данного экземпляра объекта |
ReturnParameter |
Возвращает объект ParameterInfo, который содержит сведения о типе возвращаемого значения этого метода, например, имеет ли возвращаемый тип пользовательские модификаторы. |
ReturnType |
Возвращает тип, возвращаемый этим методом. |
ReturnTypeCustomAttributes |
Возвращает пользовательские атрибуты типа возвращаемого значения. |
Методы
CreateDelegate(Type) |
Создает делегат заданного типа из этого метода. |
CreateDelegate(Type, Object) |
Создает делегат заданного типа с заданным целевым объектом из этого метода. |
CreateDelegate<T>() |
Создает делегат типа |
CreateDelegate<T>(Object) |
Создает делегат типа |
Equals(Object) |
Возвращает значение, показывающее, равен ли экземпляр указанному объекту. |
Equals(Object) |
Возвращает значение, показывающее, равен ли экземпляр указанному объекту. (Унаследовано от MethodBase) |
GetBaseDefinition() |
Если переопределено в производном классе, возвращает объект MethodInfo для метода в прямом или косвенном базовом классе, в котором был первоначально объявлен метод, предоставляемый этим экземпляром. |
GetCustomAttributes(Boolean) |
При переопределении в производном классе возвращает массив всех настраиваемых атрибутов, примененных к данному члену. (Унаследовано от MemberInfo) |
GetCustomAttributes(Type, Boolean) |
При переопределении в производном классе возвращает массив настраиваемых атрибутов, применяемых к этому элементу и определяемых параметром Type. (Унаследовано от MemberInfo) |
GetCustomAttributesData() |
Возвращает список объектов CustomAttributeData, представляющих данные об атрибутах, примененных к целевому элементу. (Унаследовано от MemberInfo) |
GetGenericArguments() |
Возвращает массив объектов Type, которые представляют аргументы универсального метода, относящиеся к типу, или параметры типа определения универсального метода. |
GetGenericArguments() |
Возвращает массив объектов Type, которые представляют аргументы универсального метода, относящиеся к типу, или параметры типа определения универсального метода. (Унаследовано от MethodBase) |
GetGenericMethodDefinition() |
Возвращает объект MethodInfo, представляющий определение универсального метода, на основе которого можно сконструировать текущий метод. |
GetHashCode() |
Возвращает хэш-код данного экземпляра. |
GetHashCode() |
Возвращает хэш-код данного экземпляра. (Унаследовано от MethodBase) |
GetMethodBody() |
При переопределении в производном классе возвращает объект MethodBody, который обеспечивает доступ к потоку MSIL, локальным переменным и исключениям для текущего метода. (Унаследовано от MethodBase) |
GetMethodImplementationFlags() |
При переопределении в производном классе возвращает новые флаги MethodImplAttributes. (Унаследовано от MethodBase) |
GetParameters() |
При переопределении в производном классе возвращает параметры заданного метода или конструктора. (Унаследовано от MethodBase) |
GetType() |
Выявляет атрибуты метода и обеспечивает доступ к его метаданным. |
GetType() |
Выявляет атрибуты метода и обеспечивает доступ к его метаданным. (Унаследовано от MethodBase) |
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) |
Операторы
Equality(MethodInfo, MethodInfo) |
Определение равенства двух объектов MethodInfo. |
Inequality(MethodInfo, MethodInfo) |
Определяет неравенство двух объектов MethodInfo. |
Явные реализации интерфейса
_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации. (Унаследовано от 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) |
Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации. (Унаследовано от 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) |
Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации. |
_MethodInfo.GetType() |
Предоставляет доступ к методу GetType() из COM-объекта. |
_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) |
Указывает, сколько экземпляров |
Методы расширения
GetCustomAttribute(MemberInfo, Type) |
Извлекает пользовательский атрибут заданного типа, примененный к указанному элементу. |
GetCustomAttribute(MemberInfo, Type, Boolean) |
Извлекает настраиваемый атрибут указанного типа, который применяется к указанному элементу и, при необходимости, проверяет предков этого элемента. |
GetCustomAttribute<T>(MemberInfo) |
Извлекает пользовательский атрибут заданного типа, примененный к указанному элементу. |
GetCustomAttribute<T>(MemberInfo, Boolean) |
Извлекает настраиваемый атрибут указанного типа, который применяется к указанному элементу и, при необходимости, проверяет предков этого элемента. |
GetCustomAttributes(MemberInfo) |
Извлекает коллекцию настраиваемых атрибутов, примененных к указанному члену. |
GetCustomAttributes(MemberInfo, Boolean) |
Извлекает коллекцию пользовательских атрибутов, которые применяются к указанному элементу и, при необходимости, проверяет предков этого элемента. |
GetCustomAttributes(MemberInfo, Type) |
Извлекает коллекцию пользовательских атрибутов заданного типа, примененных к указанному элементу. |
GetCustomAttributes(MemberInfo, Type, Boolean) |
Извлекает коллекцию пользовательских атрибутов указанного типа, которые применяется к указанному элементу и, при необходимости, проверяет предков этого элемента. |
GetCustomAttributes<T>(MemberInfo) |
Извлекает коллекцию пользовательских атрибутов заданного типа, примененных к указанному элементу. |
GetCustomAttributes<T>(MemberInfo, Boolean) |
Извлекает коллекцию пользовательских атрибутов указанного типа, которые применяется к указанному элементу и, при необходимости, проверяет предков этого элемента. |
IsDefined(MemberInfo, Type) |
Указывает, применены ли какие-либо пользовательские атрибуты заданного типа к указанному члену. |
IsDefined(MemberInfo, Type, Boolean) |
Указывает применены ли настраиваемые атрибуты указанного типа к указанному элементу и, при необходимости, применены ли они к его предкам. |
GetMetadataToken(MemberInfo) |
Возвращает маркер метаданных для заданного элемента, если он доступен. |
HasMetadataToken(MemberInfo) |
Возвращает значение, указывающее, доступен ли маркер метаданных для указанного элемента. |
GetBaseDefinition(MethodInfo) |
Выявляет атрибуты метода и обеспечивает доступ к его метаданным. |
GetRuntimeBaseDefinition(MethodInfo) |
Извлекает объект, представляющий указанный метода в прямом или косвенном базовом классе, где он был первоначально объявлен. |
Применяется к
Потокобезопасность
Данный тип потокобезопасен.