MethodBuilder Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Define e representa um método (ou construtor) em uma classe dinâmica.
public ref class MethodBuilder sealed : System::Reflection::MethodInfo
public ref class MethodBuilder abstract : System::Reflection::MethodInfo
public ref class MethodBuilder sealed : System::Reflection::MethodInfo, System::Runtime::InteropServices::_MethodBuilder
public sealed class MethodBuilder : System.Reflection.MethodInfo
public abstract class MethodBuilder : System.Reflection.MethodInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
public sealed class MethodBuilder : System.Reflection.MethodInfo, System.Runtime.InteropServices._MethodBuilder
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class MethodBuilder : System.Reflection.MethodInfo, System.Runtime.InteropServices._MethodBuilder
type MethodBuilder = class
inherit MethodInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
type MethodBuilder = class
inherit MethodInfo
interface _MethodBuilder
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type MethodBuilder = class
inherit MethodInfo
interface _MethodBuilder
Public NotInheritable Class MethodBuilder
Inherits MethodInfo
Public MustInherit Class MethodBuilder
Inherits MethodInfo
Public NotInheritable Class MethodBuilder
Inherits MethodInfo
Implements _MethodBuilder
- Herança
- Atributos
- Implementações
Exemplos
O exemplo a seguir usa a MethodBuilder classe para criar um método dentro de um tipo dinâmico.
using namespace System;
using namespace System::Reflection;
using namespace System::Reflection::Emit;
void AddMethodDynamically( TypeBuilder^ myTypeBld,
String^ mthdName,
array<Type^>^ mthdParams,
Type^ returnType,
String^ mthdAction )
{
MethodBuilder^ myMthdBld = myTypeBld->DefineMethod( mthdName, static_cast<MethodAttributes>(MethodAttributes::Public | MethodAttributes::Static), returnType, mthdParams );
ILGenerator^ ILOut = myMthdBld->GetILGenerator();
int numParams = mthdParams->Length;
for ( Byte x = 0; x < numParams; x++ )
{
ILOut->Emit( OpCodes::Ldarg_S, x );
}
if ( numParams > 1 )
{
for ( int y = 0; y < (numParams - 1); y++ )
{
if ( mthdAction->Equals( "A" ) )
ILOut->Emit( OpCodes::Add );
else
if ( mthdAction->Equals( "M" ) )
ILOut->Emit( OpCodes::Mul );
else
ILOut->Emit( OpCodes::Add );
}
}
ILOut->Emit( OpCodes::Ret );
};
void main()
{
AppDomain^ myDomain = AppDomain::CurrentDomain;
AssemblyName^ asmName = gcnew AssemblyName;
asmName->Name = "MyDynamicAsm";
AssemblyBuilder^ myAsmBuilder = myDomain->DefineDynamicAssembly( asmName,
AssemblyBuilderAccess::RunAndSave );
ModuleBuilder^ myModule = myAsmBuilder->DefineDynamicModule( "MyDynamicAsm",
"MyDynamicAsm.dll" );
TypeBuilder^ myTypeBld = myModule->DefineType( "MyDynamicType",
TypeAttributes::Public );
// Get info from the user to build the method dynamically.
Console::WriteLine( "Let's build a simple method dynamically!" );
Console::WriteLine( "Please enter a few numbers, separated by spaces." );
String^ inputNums = Console::ReadLine();
Console::Write( "Do you want to [A]dd (default) or [M]ultiply these numbers? " );
String^ myMthdAction = Console::ReadLine()->ToUpper();
Console::Write( "Lastly, what do you want to name your new dynamic method? " );
String^ myMthdName = Console::ReadLine();
// Process inputNums into an array and create a corresponding Type array
int index = 0;
array<String^>^inputNumsList = inputNums->Split();
array<Type^>^myMthdParams = gcnew array<Type^>(inputNumsList->Length);
array<Object^>^inputValsList = gcnew array<Object^>(inputNumsList->Length);
for each (String^ inputNum in inputNumsList)
{
inputValsList[ index ] = Convert::ToInt32( inputNum );
myMthdParams[ index ] = int::typeid;
index++;
}
// Now, call the method building method with the parameters, passing the
// TypeBuilder by reference.
AddMethodDynamically( myTypeBld,
myMthdName,
myMthdParams,
int::typeid,
myMthdAction );
Type^ myType = myTypeBld->CreateType();
Console::WriteLine( "---" );
Console::WriteLine( "The result of {0} the inputted values is: {1}",
((myMthdAction->Equals( "M" )) ? "multiplying" : "adding"),
myType->InvokeMember( myMthdName,
BindingFlags::InvokeMethod | BindingFlags::Public | BindingFlags::Static,
nullptr,
nullptr,
inputValsList ) );
Console::WriteLine( "---" );
// Let's take a look at the method we created.
// If you are interested in seeing the MSIL generated dynamically for the method
// your program generated, change to the directory where you ran the compiled
// code sample and type "ildasm MyDynamicAsm.dll" at the prompt. When the list
// of manifest contents appears, click on "MyDynamicType" and then on the name of
// of the method you provided during execution.
myAsmBuilder->Save( "MyDynamicAsm.dll" );
MethodInfo^ myMthdInfo = myType->GetMethod( myMthdName );
Console::WriteLine( "Your Dynamic Method: {0};", myMthdInfo );
}
using System;
using System.Reflection;
using System.Reflection.Emit;
class DemoMethodBuilder
{
public static void AddMethodDynamically (TypeBuilder myTypeBld,
string mthdName,
Type[] mthdParams,
Type returnType,
string mthdAction)
{
MethodBuilder myMthdBld = myTypeBld.DefineMethod(
mthdName,
MethodAttributes.Public |
MethodAttributes.Static,
returnType,
mthdParams);
ILGenerator ILout = myMthdBld.GetILGenerator();
int numParams = mthdParams.Length;
for (byte x=0; x < numParams; x++)
{
ILout.Emit(OpCodes.Ldarg_S, x);
}
if (numParams > 1)
{
for (int y=0; y<(numParams-1); y++)
{
switch (mthdAction)
{
case "A": ILout.Emit(OpCodes.Add);
break;
case "M": ILout.Emit(OpCodes.Mul);
break;
default: ILout.Emit(OpCodes.Add);
break;
}
}
}
ILout.Emit(OpCodes.Ret);
}
public static void Main()
{
AppDomain myDomain = AppDomain.CurrentDomain;
AssemblyName asmName = new AssemblyName();
asmName.Name = "MyDynamicAsm";
AssemblyBuilder myAsmBuilder = myDomain.DefineDynamicAssembly(
asmName,
AssemblyBuilderAccess.RunAndSave);
ModuleBuilder myModule = myAsmBuilder.DefineDynamicModule("MyDynamicAsm",
"MyDynamicAsm.dll");
TypeBuilder myTypeBld = myModule.DefineType("MyDynamicType",
TypeAttributes.Public);
// Get info from the user to build the method dynamically.
Console.WriteLine("Let's build a simple method dynamically!");
Console.WriteLine("Please enter a few numbers, separated by spaces.");
string inputNums = Console.ReadLine();
Console.Write("Do you want to [A]dd (default) or [M]ultiply these numbers? ");
string myMthdAction = Console.ReadLine().ToUpper();
Console.Write("Lastly, what do you want to name your new dynamic method? ");
string myMthdName = Console.ReadLine();
// Process inputNums into an array and create a corresponding Type array
int index = 0;
string[] inputNumsList = inputNums.Split();
Type[] myMthdParams = new Type[inputNumsList.Length];
object[] inputValsList = new object[inputNumsList.Length];
foreach (string inputNum in inputNumsList)
{
inputValsList[index] = (object)Convert.ToInt32(inputNum);
myMthdParams[index] = typeof(int);
index++;
}
// Now, call the method building method with the parameters, passing the
// TypeBuilder by reference.
AddMethodDynamically(myTypeBld,
myMthdName,
myMthdParams,
typeof(int),
myMthdAction);
Type myType = myTypeBld.CreateType();
Console.WriteLine("---");
Console.WriteLine("The result of {0} the inputted values is: {1}",
((myMthdAction == "M") ? "multiplying" : "adding"),
myType.InvokeMember(myMthdName,
BindingFlags.InvokeMethod | BindingFlags.Public |
BindingFlags.Static,
null,
null,
inputValsList));
Console.WriteLine("---");
// Let's take a look at the method we created.
// If you are interested in seeing the MSIL generated dynamically for the method
// your program generated, change to the directory where you ran the compiled
// code sample and type "ildasm MyDynamicAsm.dll" at the prompt. When the list
// of manifest contents appears, click on "MyDynamicType" and then on the name of
// of the method you provided during execution.
myAsmBuilder.Save("MyDynamicAsm.dll");
MethodInfo myMthdInfo = myType.GetMethod(myMthdName);
Console.WriteLine("Your Dynamic Method: {0};", myMthdInfo.ToString());
}
}
Imports System.Reflection
Imports System.Reflection.Emit
Class DemoMethodBuilder
Public Shared Sub AddMethodDynamically(ByVal myTypeBld As TypeBuilder, _
ByVal mthdName As String, _
ByVal mthdParams() As Type, _
ByVal returnType As Type, _
ByVal mthdAction As String)
Dim myMthdBld As MethodBuilder = myTypeBld.DefineMethod(mthdName, _
MethodAttributes.Public Or MethodAttributes.Static, _
returnType, _
mthdParams)
Dim ILout As ILGenerator = myMthdBld.GetILGenerator()
Dim numParams As Integer = mthdParams.Length
Dim x As Byte
For x = 0 To numParams - 1
ILout.Emit(OpCodes.Ldarg_S, x)
Next x
If numParams > 1 Then
Dim y As Integer
For y = 0 To (numParams - 1) - 1
Select Case mthdAction
Case "A"
ILout.Emit(OpCodes.Add)
Case "M"
ILout.Emit(OpCodes.Mul)
Case Else
ILout.Emit(OpCodes.Add)
End Select
Next y
End If
ILout.Emit(OpCodes.Ret)
End Sub
Public Shared Sub Main()
Dim myDomain As AppDomain = AppDomain.CurrentDomain
Dim asmName As New AssemblyName()
asmName.Name = "MyDynamicAsm"
Dim myAsmBuilder As AssemblyBuilder = myDomain.DefineDynamicAssembly(asmName, _
AssemblyBuilderAccess.RunAndSave)
Dim myModule As ModuleBuilder = myAsmBuilder.DefineDynamicModule("MyDynamicAsm", _
"MyDynamicAsm.dll")
Dim myTypeBld As TypeBuilder = myModule.DefineType("MyDynamicType", TypeAttributes.Public)
' Get info from the user to build the method dynamically.
Console.WriteLine("Let's build a simple method dynamically!")
Console.WriteLine("Please enter a few numbers, separated by spaces.")
Dim inputNums As String = Console.ReadLine()
Console.Write("Do you want to [A]dd (default) or [M]ultiply these numbers? ")
Dim myMthdAction As String = Console.ReadLine().ToUpper()
Console.Write("Lastly, what do you want to name your new dynamic method? ")
Dim myMthdName As String = Console.ReadLine()
' Process inputNums into an array and create a corresponding Type array
Dim index As Integer = 0
Dim inputNumsList As String() = inputNums.Split()
Dim myMthdParams(inputNumsList.Length - 1) As Type
Dim inputValsList(inputNumsList.Length - 1) As Object
Dim inputNum As String
For Each inputNum In inputNumsList
inputValsList(index) = CType(Convert.ToInt32(inputNum), Object)
myMthdParams(index) = GetType(Integer)
index += 1
Next inputNum
' Now, call the method building method with the parameters, passing the
' TypeBuilder by reference.
AddMethodDynamically(myTypeBld, myMthdName, myMthdParams, GetType(Integer), myMthdAction)
Dim myType As Type = myTypeBld.CreateType()
Dim description as String
If myMthdAction = "M" Then
description = "multiplying"
Else
description = "adding"
End If
Console.WriteLine("---")
Console.WriteLine("The result of {0} the values is: {1}", _
description, _
myType.InvokeMember(myMthdName, _
BindingFlags.InvokeMethod _
Or BindingFlags.Public _
Or BindingFlags.Static, _
Nothing, _
Nothing, _
inputValsList))
Console.WriteLine("---")
' If you are interested in seeing the MSIL generated dynamically for the method
' your program generated, change to the directory where you ran the compiled
' code sample and type "ildasm MyDynamicAsm.dll" at the prompt. When the list
' of manifest contents appears, click on "MyDynamicType" and then on the name of
' of the method you provided during execution.
myAsmBuilder.Save("MyDynamicAsm.dll")
Dim myMthdInfo As MethodInfo = myType.GetMethod(myMthdName)
Console.WriteLine("Your Dynamic Method: {0};", myMthdInfo.ToString())
End Sub
End Class
Comentários
Para obter mais informações sobre essa API, consulte Comentários da API complementar para MethodBuilder.
Construtores
MethodBuilder() |
Inicializa uma nova instância da classe MethodBuilder. |
Propriedades
Attributes |
Recupera os atributos para este método. |
CallingConvention |
Retorna a convenção de chamada do método. |
ContainsGenericParameters |
Não tem suporte para esse tipo. |
ContainsGenericParameters |
Obtém um valor que indica se um método genérico contém parâmetros de tipo genérico não atribuídos. (Herdado de MethodInfo) |
CustomAttributes |
Obtém uma coleção que contém os atributos personalizados desse membro. (Herdado de MemberInfo) |
DeclaringType |
Retorna o tipo que declara a este método. |
InitLocals |
Obtém ou define um valor booliano que especifica se as variáveis locais nesse método são inicializadas em zero. O valor padrão dessa propriedade é |
InitLocalsCore |
Quando substituído em uma classe derivada, obtém ou define um valor que indica se as variáveis locais nesse método são inicializadas como zero. |
IsAbstract |
Obtém um valor que indica se o método é abstrato. (Herdado de MethodBase) |
IsAssembly |
Obtém um valor que indica se a visibilidade potencial deste método ou construtor é descrita por Assembly; ou seja, o construtor ou método é visível no máximo para outros tipos no mesmo assembly e não é visível a tipos derivados fora do assembly. (Herdado de MethodBase) |
IsCollectible |
Obtém um valor que indica se este objeto MemberInfo faz parte de um assembly mantido em uma coleção AssemblyLoadContext. (Herdado de MemberInfo) |
IsConstructedGenericMethod |
Define e representa um método (ou construtor) em uma classe dinâmica. |
IsConstructedGenericMethod |
Define e representa um método (ou construtor) em uma classe dinâmica. (Herdado de MethodBase) |
IsConstructor |
Obtém um valor que indica se o método é um construtor. (Herdado de MethodBase) |
IsFamily |
Obtém um valor que indica se a visibilidade deste método ou construtor é descrita por Family; ou seja, o método ou o construtor é visível somente dentro de sua classe e de classes derivadas. (Herdado de MethodBase) |
IsFamilyAndAssembly |
Obtém um valor que indica se a visibilidade deste método ou construtor é descrita por FamANDAssem; ou seja, o método ou o construtor pode ser chamado por classes derivadas, mas apenas se estiverem no mesmo assembly. (Herdado de MethodBase) |
IsFamilyOrAssembly |
Obtém um valor que indica se a visibilidade potencial deste método ou construtor é descrita por FamORAssem; ou seja, o método ou o construtor pode ser chamado por classes derivadas, não importa em que lugar elas estejam e por classes no mesmo assembly. (Herdado de MethodBase) |
IsFinal |
Obtém um valor que indica se esse método é |
IsGenericMethod |
Obtém um valor que indica se o método é um método genérico. |
IsGenericMethod |
Obtém um valor que indica se o método atual é um método genérico. (Herdado de MethodInfo) |
IsGenericMethodDefinition |
Obtém um valor que indica se o objeto MethodBuilder atual representa a definição de um método genérico. |
IsGenericMethodDefinition |
Obtém um valor que indica se o MethodInfo atual representa a definição de um método genérico. (Herdado de MethodInfo) |
IsHideBySig |
Obtém um valor que indica se apenas um membro do mesmo tipo, com exatamente a mesma assinatura, está oculto na classe derivada. (Herdado de MethodBase) |
IsPrivate |
Obtém um valor que indica se este membro é privado. (Herdado de MethodBase) |
IsPublic |
Obtém um valor que indica se este é um método público. (Herdado de MethodBase) |
IsSecurityCritical |
Gera um NotSupportedException em todos os casos. |
IsSecurityCritical |
Obtém um valor que indica se o método ou o construtor atual é crítico para segurança ou crítico para segurança e disponível no código transparente no nível de confiança atual e, portanto, pode realizar operações críticas. (Herdado de MethodBase) |
IsSecuritySafeCritical |
Gera um NotSupportedException em todos os casos. |
IsSecuritySafeCritical |
Obtém um valor que indica se o método ou o construtor atual é crítico para segurança e disponível no código transparente no nível de confiança atual; ou seja, se ele pode realizar operações críticas e ser acessado pelo código transparente. (Herdado de MethodBase) |
IsSecurityTransparent |
Gera um NotSupportedException em todos os casos. |
IsSecurityTransparent |
Obtém um valor que indica que se o método ou o construtor atual é transparente no nível de confiança atual e, portanto, não é pode realizar operações críticas. (Herdado de MethodBase) |
IsSpecialName |
Obtém um valor que indica se esse método tem um nome especial. (Herdado de MethodBase) |
IsStatic |
Obtém um valor que indica se o método é |
IsVirtual |
Obtém um valor que indica se o método é |
MemberType |
Obtém um valor MemberTypes que indica que esse membro é um método. (Herdado de MethodInfo) |
MetadataToken |
Obtém um token que identifica o módulo dinâmico atual nos metadados. |
MetadataToken |
Obtém um valor que identifica um elemento de metadados. (Herdado de MemberInfo) |
MethodHandle |
Recupera o identificador interno para o método. Use esse identificador para acessar o identificador de metadados subjacente. |
MethodHandle |
Obtém um identificador para a representação interna de metadados de um método. (Herdado de MethodBase) |
MethodImplementationFlags |
Define e representa um método (ou construtor) em uma classe dinâmica. |
MethodImplementationFlags |
Obtém os sinalizadores MethodImplAttributes que especificam os atributos de uma implementação de método. (Herdado de MethodBase) |
Module |
Obtém o módulo no qual o método atual está sendo definido. |
Module |
Obtém o módulo no qual o tipo que declara o membro representado pelo MemberInfo atual está definido. (Herdado de MemberInfo) |
Name |
Recupera o nome desse método. |
ReflectedType |
Recupera a classe que foi usada em reflexão para obter esse objeto. |
ReflectedType |
Obtém o objeto de classe que foi usado para obter esta instância de |
ReturnParameter |
Obtém um objeto ParameterInfo que contém informações sobre o tipo de retorno do método, como se o tipo de retorno tem modificadores personalizados. |
ReturnParameter |
Obtém um objeto ParameterInfo que contém informações sobre o tipo de retorno do método, como se o tipo de retorno tem modificadores personalizados. (Herdado de MethodInfo) |
ReturnType |
Obtém o tipo de retorno do método representado por esse MethodBuilder. |
ReturnType |
Obtém o tipo de retorno desse método. (Herdado de MethodInfo) |
ReturnTypeCustomAttributes |
Retorna os atributos personalizados do tipo de retorno do método. |
ReturnTypeCustomAttributes |
Obtém os atributos personalizados para o tipo de retorno. (Herdado de MethodInfo) |
Signature |
Recupera a assinatura do método. |
Métodos
AddDeclarativeSecurity(SecurityAction, PermissionSet) |
Adiciona a segurança declarativa a este método. |
CreateDelegate(Type) |
Cria um delegado do tipo especificado desse método. (Herdado de MethodInfo) |
CreateDelegate(Type, Object) |
Cria um delegado do tipo especificado com o destino especificado deste método. (Herdado de MethodInfo) |
CreateDelegate<T>() |
Cria um delegado do tipo |
CreateDelegate<T>(Object) |
Cria um delegado do tipo |
CreateMethodBody(Byte[], Int32) |
Cria o corpo do método usando uma matriz de bytes fornecida de instruções do MSIL (Microsoft Intermediate Language). |
DefineGenericParameters(String[]) |
Define o número de parâmetros de tipo genérico para o método atual, especifica seus nomes e retorna uma matriz de objetos GenericTypeParameterBuilder que pode ser usada para definir suas restrições. |
DefineGenericParametersCore(String[]) |
Quando substituído em uma classe derivada, define o número de parâmetros de tipo genérico para o método atual, especifica seus nomes e retorna uma matriz de GenericTypeParameterBuilder objetos que podem ser usados para definir suas restrições. |
DefineParameter(Int32, ParameterAttributes, String) |
Define os atributos de parâmetro e o nome de um parâmetro deste método, ou do valor retornado deste método. Retorna um ParameterBuilder que pode ser usado para aplicar os atributos personalizados. |
DefineParameterCore(Int32, ParameterAttributes, String) |
Quando substituído em uma classe derivada, define um parâmetro ou parâmetro de retorno para esse método. |
Equals(Object) |
Determina se o objeto especificado é igual a esta instância. |
GetBaseDefinition() |
Retorna a implementação de base para um método. |
GetBaseDefinition() |
Quando substituído em uma classe derivada, retorna o objeto MethodInfo para o método sobre a classe base direta ou indireta em que o método representado por esta instância foi declarado. (Herdado de MethodInfo) |
GetCustomAttributes(Boolean) |
Retorna todos os atributos personalizados definidos para esse método. |
GetCustomAttributes(Boolean) |
Quando substituído em uma classe derivada, retorna uma matriz de todos os atributos personalizados aplicados a esse membro. (Herdado de MemberInfo) |
GetCustomAttributes(Type, Boolean) |
Retorna os atributos personalizados identificados pelo tipo determinado. |
GetCustomAttributes(Type, Boolean) |
Quando substituído em uma classe derivada, retorna uma matriz de atributos personalizados aplicados a esse membro e identificados por Type. (Herdado de MemberInfo) |
GetCustomAttributesData() |
Retorna uma lista de objetos CustomAttributeData que representam dados sobre os atributos que foram aplicados ao membro de destino. (Herdado de MemberInfo) |
GetGenericArguments() |
Retorna uma matriz de objetos GenericTypeParameterBuilder que representam os parâmetros de tipo do método, se for genérico. |
GetGenericArguments() |
Retorna uma matriz de objetos Type que representam os argumentos de tipo de um método genérico ou os parâmetros de tipo de uma definição de método genérico. (Herdado de MethodInfo) |
GetGenericMethodDefinition() |
Retorna este método. |
GetGenericMethodDefinition() |
Retorna um objeto MethodInfo que representa uma definição de método genérico da qual o método atual pode ser criado. (Herdado de MethodInfo) |
GetHashCode() |
Obtém o código hash para este método. |
GetILGenerator() |
Retorna um |
GetILGenerator(Int32) |
Retorna um |
GetILGeneratorCore(Int32) |
Quando substituído em uma classe derivada, obtém um ILGenerator que pode ser usado para emitir um corpo de método para esse método. |
GetMethodBody() |
Quando substituído em uma classe derivada, obtém um objeto MethodBody que fornece acesso ao fluxo MSIL, variáveis locais e exceções para o método atual. (Herdado de MethodBase) |
GetMethodImplementationFlags() |
Retorna os sinalizadores de implementação para o método. |
GetMethodImplementationFlags() |
Quando substituído em uma classe derivada, retorna os sinalizadores MethodImplAttributes. (Herdado de MethodBase) |
GetModule() |
Retorna uma referência para o módulo que contém este método. |
GetParameters() |
Retorna os parâmetros deste método. |
GetToken() |
Retorna o |
GetType() |
Descobre os atributos de um método e fornece acesso aos metadados de método. (Herdado de MethodInfo) |
HasSameMetadataDefinitionAs(MemberInfo) |
Define e representa um método (ou construtor) em uma classe dinâmica. (Herdado de MemberInfo) |
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
Invoca dinamicamente o método refletido por esta instância no objeto fornecido, passando os parâmetros especificados e sob as restrições do associador determinado. |
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
Quando substituído em uma classe derivada, invoca o método ou o construtor refletido com parâmetros especificados. (Herdado de MethodBase) |
Invoke(Object, Object[]) |
Invoca o método ou o construtor representado pela instância atual, usando os parâmetros especificados. (Herdado de MethodInfo) |
IsDefined(Type, Boolean) |
Verifica se o tipo de atributo personalizado especificado é definido. |
IsDefined(Type, Boolean) |
Quando substituído em uma classe derivada, indica se um ou mais atributos do tipo especificado ou de seus tipos derivados são aplicados a esse membro. (Herdado de MemberInfo) |
MakeGenericMethod(Type[]) |
Retorna um método genérico construído da definição de método genérico atual usando os argumentos de tipo genérico especificados. |
MakeGenericMethod(Type[]) |
Substitui os elementos de uma matriz de tipos pelos parâmetros de tipo da definição de método genérico atual e retorna um objeto MethodInfo que representa o método construído resultante. (Herdado de MethodInfo) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
SetCustomAttribute(ConstructorInfo, Byte[]) |
Define um atributo personalizado usando um blob de atributo personalizado especificado. |
SetCustomAttribute(CustomAttributeBuilder) |
Define um atributo personalizado usando um construtor de atributos personalizados. |
SetCustomAttributeCore(ConstructorInfo, ReadOnlySpan<Byte>) |
Quando substituído em uma classe derivada, define um atributo personalizado neste assembly. |
SetImplementationFlags(MethodImplAttributes) |
Define os sinalizadores de implementação para este método. |
SetImplementationFlagsCore(MethodImplAttributes) |
Quando substituído em uma classe derivada, define os sinalizadores de implementação para esse método. |
SetMarshal(UnmanagedMarshal) |
Obsoleto.
Define informações de marshaling para o tipo retornado desse método. |
SetMethodBody(Byte[], Int32, Byte[], IEnumerable<ExceptionHandler>, IEnumerable<Int32>) |
Cria o corpo do método usando uma matriz de bytes especificada de instruções MSIL (linguagem intermediária da Microsoft). |
SetParameters(Type[]) |
Define o número e tipos de parâmetros para um método. |
SetReturnType(Type) |
Define o tipo retornado do método. |
SetSignature(Type, Type[], Type[], Type[], Type[][], Type[][]) |
Define a assinatura do método, incluindo o tipo retornado, os tipos de parâmetro e os modificadores personalizados obrigatórios e opcionais do tipo retornado e dos tipos de parâmetro. |
SetSignatureCore(Type, Type[], Type[], Type[], Type[][], Type[][]) |
Quando substituído em uma classe derivada, define a assinatura do método, incluindo o tipo de retorno, os tipos de parâmetro e os modificadores personalizados obrigatórios e opcionais dos tipos de parâmetro e tipo de retorno. |
SetSymCustomAttribute(String, Byte[]) |
Define um atributo personalizado simbólico usando um blob. |
ToString() |
Retorna esta instância |
Implantações explícitas de interface
_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição. (Herdado de MemberInfo) |
_MemberInfo.GetType() |
Obtém um objeto Type que representa a classe MemberInfo. (Herdado de MemberInfo) |
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera as informações do tipo de um objeto, que podem ser usadas para obter informações de tipo para uma interface. (Herdado de MemberInfo) |
_MemberInfo.GetTypeInfoCount(UInt32) |
Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1). (Herdado de MemberInfo) |
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornece acesso a propriedades e métodos expostos por um objeto. (Herdado de MemberInfo) |
_MethodBase.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição. (Herdado de MethodBase) |
_MethodBase.GetType() |
Para obter uma descrição desse membro, confira GetType(). (Herdado de MethodBase) |
_MethodBase.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera as informações do tipo de um objeto, que podem ser usadas para obter informações de tipo para uma interface. (Herdado de MethodBase) |
_MethodBase.GetTypeInfoCount(UInt32) |
Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1). (Herdado de MethodBase) |
_MethodBase.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornece acesso a propriedades e métodos expostos por um objeto. (Herdado de MethodBase) |
_MethodBase.IsAbstract |
Para obter uma descrição desse membro, confira IsAbstract. (Herdado de MethodBase) |
_MethodBase.IsAssembly |
Para obter uma descrição desse membro, confira IsAssembly. (Herdado de MethodBase) |
_MethodBase.IsConstructor |
Para obter uma descrição desse membro, confira IsConstructor. (Herdado de MethodBase) |
_MethodBase.IsFamily |
Para obter uma descrição desse membro, confira IsFamily. (Herdado de MethodBase) |
_MethodBase.IsFamilyAndAssembly |
Para obter uma descrição desse membro, confira IsFamilyAndAssembly. (Herdado de MethodBase) |
_MethodBase.IsFamilyOrAssembly |
Para obter uma descrição desse membro, confira IsFamilyOrAssembly. (Herdado de MethodBase) |
_MethodBase.IsFinal |
Para obter uma descrição desse membro, confira IsFinal. (Herdado de MethodBase) |
_MethodBase.IsHideBySig |
Para obter uma descrição desse membro, confira IsHideBySig. (Herdado de MethodBase) |
_MethodBase.IsPrivate |
Para obter uma descrição desse membro, confira IsPrivate. (Herdado de MethodBase) |
_MethodBase.IsPublic |
Para obter uma descrição desse membro, confira IsPublic. (Herdado de MethodBase) |
_MethodBase.IsSpecialName |
Para obter uma descrição desse membro, confira IsSpecialName. (Herdado de MethodBase) |
_MethodBase.IsStatic |
Para obter uma descrição desse membro, confira IsStatic. (Herdado de MethodBase) |
_MethodBase.IsVirtual |
Para obter uma descrição desse membro, confira IsVirtual. (Herdado de MethodBase) |
_MethodBuilder.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição. |
_MethodBuilder.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera as informações do tipo de um objeto, que podem ser usadas para obter informações de tipo para uma interface. |
_MethodBuilder.GetTypeInfoCount(UInt32) |
Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1). |
_MethodBuilder.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornece acesso a propriedades e métodos expostos por um objeto. |
_MethodInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição. (Herdado de MethodInfo) |
_MethodInfo.GetType() |
Dá acesso ao GetType() método do COM. (Herdado de MethodInfo) |
_MethodInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface. (Herdado de MethodInfo) |
_MethodInfo.GetTypeInfoCount(UInt32) |
Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1). (Herdado de MethodInfo) |
_MethodInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornece acesso a propriedades e métodos expostos por um objeto. (Herdado de MethodInfo) |
ICustomAttributeProvider.GetCustomAttributes(Boolean) |
Retorna uma matriz de todos os atributos personalizados definidos neste membro, exceto atributos nomeados ou então uma matriz vazia, se não houver nenhum atributo personalizado. (Herdado de MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
Retorna uma matriz de atributos personalizados definidos neste membro, identificados por tipo ou então uma matriz vazia, se não houver nenhum atributo personalizado desse tipo. (Herdado de MemberInfo) |
ICustomAttributeProvider.IsDefined(Type, Boolean) |
Indica se uma ou mais instâncias de |
Métodos de Extensão
GetCustomAttribute(MemberInfo, Type) |
Recupera um atributo personalizado de um tipo especificado aplicado a um membro especificado. |
GetCustomAttribute(MemberInfo, Type, Boolean) |
Recupera um atributo personalizado de um tipo especificado aplicado a um membro especificado e opcionalmente inspeciona os ancestrais desse membro. |
GetCustomAttribute<T>(MemberInfo) |
Recupera um atributo personalizado de um tipo especificado aplicado a um membro especificado. |
GetCustomAttribute<T>(MemberInfo, Boolean) |
Recupera um atributo personalizado de um tipo especificado aplicado a um membro especificado e opcionalmente inspeciona os ancestrais desse membro. |
GetCustomAttributes(MemberInfo) |
Recupera uma coleção de atributos personalizados que são aplicados a um membro especificado. |
GetCustomAttributes(MemberInfo, Boolean) |
Recupera uma coleção de atributos personalizados aplicado a um membro especificado e opcionalmente inspeciona os ancestrais desse membro. |
GetCustomAttributes(MemberInfo, Type) |
Recupera uma coleção de atributos personalizados de um tipo especificado que são aplicados a um membro especificado. |
GetCustomAttributes(MemberInfo, Type, Boolean) |
Recupera uma coleção de atributos personalizados de um tipo especificado aplicado a um membro especificado e opcionalmente inspeciona os ancestrais desse membro. |
GetCustomAttributes<T>(MemberInfo) |
Recupera uma coleção de atributos personalizados de um tipo especificado que são aplicados a um membro especificado. |
GetCustomAttributes<T>(MemberInfo, Boolean) |
Recupera uma coleção de atributos personalizados de um tipo especificado aplicado a um membro especificado e opcionalmente inspeciona os ancestrais desse membro. |
IsDefined(MemberInfo, Type) |
Indica se os atributos personalizados de um tipo especificados são aplicados a um membro especificado. |
IsDefined(MemberInfo, Type, Boolean) |
Indica se os atributos personalizados de um tipo especificado são aplicados a um membro especificado e, opcionalmente, aplicados a seus ancestrais. |
GetMetadataToken(MemberInfo) |
Obtém um token de metadados para o membro fornecido, se disponível. |
HasMetadataToken(MemberInfo) |
Retorna um valor que indica se um token de metadados está disponível para o membro especificado. |
GetBaseDefinition(MethodInfo) |
Define e representa um método (ou construtor) em uma classe dinâmica. |
GetRuntimeBaseDefinition(MethodInfo) |
Recupera um objeto que representa o método especificado na classe base direta ou indireta em que o método foi declarado pela primeira vez. |