MethodBuilder.Invoke Método
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.
Invoca dinamicamente o método refletido por essa instância no objeto fornecido, passando os parâmetros especificados e sob as restrições do associador fornecido.
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
Parâmetros
- obj
- Object
O objeto no qual invocar o método especificado. Se o método for estático, esse parâmetro será ignorado.
- invokeAttr
- BindingFlags
Isso deve ser um sinalizador de bit de BindingFlags : InvokeMethod, NonPublice assim por diante.
- binder
- Binder
Um objeto que permite a associação, a coerção de tipos de argumento, a invocação de membros e a recuperação de objetos MemberInfo por meio da reflexão. Se o associador for null, o associador padrão será usado. Para obter mais detalhes, confira Binder.
- parameters
- Object[]
Uma lista de argumentos. Essa é uma matriz de argumentos com o mesmo número, ordem e tipo que os parâmetros do método a ser invocado. Se não houver parâmetros, isso deve ser null.
- culture
- CultureInfo
Uma instância usada CultureInfo para controlar a coerção de tipos. Se isso for nulo, o CultureInfo thread atual será usado. (Observe que isso é necessário para, por exemplo, converter um String que representa 1000 em um Double valor, uma vez que 1000 é representado de forma diferente por culturas diferentes.)
Retornos
Retorna um objeto que contém o valor retornado do método invocado.
Exceções
No momento, não há suporte para esse método. Recuperar o método usando GetMethod(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) e chamar InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) no retornado MethodInfo.
Comentários
Se o método for estático, o obj parâmetro será ignorado. Para métodos não estáticos, obj deve ser uma instância de uma classe que herda ou declara o método e deve ser do mesmo tipo que essa classe. Se o método não tiver parâmetros, o valor parameters deverá ser null. Caso contrário, o número, o tipo e a ordem dos elementos na matriz de parâmetros devem ser idênticos ao número, ao tipo e à ordem dos parâmetros para o método refletido por essa instância.
Note
As restrições de acesso são ignoradas para código totalmente confiável. Ou seja, construtores privados, métodos, campos e propriedades podem ser acessados e invocados usando Reflexão sempre que o código for totalmente confiável.