ConstructorBuilder.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 o construtor refletido dinamicamente por essa instância.
Sobrecargas
| Nome | Description |
|---|---|
| Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
Invoca dinamicamente o construtor refletido por essa instância com os argumentos especificados, sob as restrições do especificado |
| Invoke(BindingFlags, Binder, Object[], CultureInfo) |
Invoca dinamicamente o construtor representado por essa instância no objeto fornecido, passando os parâmetros especificados e sob as restrições do associador fornecido. |
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
Invoca dinamicamente o construtor refletido por essa instância com os argumentos especificados, sob as restrições do especificado Binder.
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 que precisa ser reinicializado.
- invokeAttr
- BindingFlags
Um dos BindingFlags valores que especifica o tipo de associação desejado.
- binder
- Binder
Um Binder que define um conjunto de propriedades e habilita a associação, coerção de tipos de argumento e invocação de membros usando reflexão. Se binder for null, Binder.DefaultBinding será usado.
- parameters
- Object[]
Uma lista de argumentos. Essa é uma matriz de argumentos com o mesmo número, ordem e tipo que os parâmetros do construtor a ser invocado. Se não houver parâmetros, essa deverá ser uma referência nula (Nothing em Visual Basic).
- culture
- CultureInfo
Um CultureInfo usado para controlar a coerção de tipos. Se isso for nulo, o CultureInfo thread atual será usado.
Retornos
Uma instância da classe associada ao construtor.
Exceções
No momento, não há suporte para esse método. Você pode recuperar o construtor usando GetConstructor(BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) e chamar Invoke(BindingFlags, Binder, Object[], CultureInfo) no retornado ConstructorInfo.
Comentários
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 construtor refletido por essa instância.
Antes de chamar o construtor, Invoke verifique se o chamador tem permissão de acesso e se os parâmetros são do número, da ordem e do tipo corretos.
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.
Confira também
Aplica-se a
Invoke(BindingFlags, Binder, Object[], CultureInfo)
Invoca dinamicamente o construtor representado 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::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ parameters, System::Globalization::CultureInfo ^ culture);
public override object Invoke(System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, object[] parameters, System.Globalization.CultureInfo culture);
override this.Invoke : System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo -> obj
Public Overrides Function Invoke (invokeAttr As BindingFlags, binder As Binder, parameters As Object(), culture As CultureInfo) As Object
Parâmetros
- invokeAttr
- BindingFlags
Isso deve ser um sinalizador de bit de BindingFlags, como InvokeMethod, NonPublic e 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 usando reflexão. Se o associador for null, o associador padrão será usado. Consulte 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 construtor 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. (Por exemplo, isso é necessário para converter um String que representa 1000 em um Double valor, uma vez que 1000 é representado de forma diferente por culturas diferentes.)
Retornos
O valor retornado pelo construtor invocado.
Exceções
No momento, não há suporte para esse método. Você pode recuperar o construtor usando GetConstructor(BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[]) e chamar Invoke(BindingFlags, Binder, Object[], CultureInfo) no retornado ConstructorInfo.
Comentários
Se o construtor não tiver parâmetros, o valor do parameters parâmetro deverá ser null. Caso contrário, o número, o tipo e a parameters ordem dos elementos na matriz devem ser idênticos ao número, ao tipo e à ordem dos parâmetros para o construtor refletido por essa instância.
Por exemplo, se o construtor refletido por essa instância for declarado como classe pública tomando duas cadeias de caracteres, o parameters parâmetro deverá ser uma matriz com Object comprimento 2.
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.