Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Como o CLR (Common Language Runtime) tem acesso a informações de tipo genérico em tempo de execução, você pode usar a reflexão para obter informações sobre tipos genéricos da mesma forma que para tipos não genéricos. Para obter mais informações, consulte Genéricos no Runtime.
O System.Reflection.Emit namespace também contém novos membros que dão suporte a genéricos. Veja como definir um tipo genérico com a emissão de reflexão.
Para obter uma lista das condições invariáveis para termos usados na reflexão genérica, consulte os comentários da propriedade IsGenericType:
- IsGenericType: retornará true se um tipo for genérico.
-
GetGenericArguments: retorna uma matriz de
Typeobjetos que representam os argumentos de tipo fornecidos para um tipo construído ou os parâmetros de tipo de uma definição de tipo genérico. - GetGenericTypeDefinition: retorna a definição de tipo genérico subjacente para o tipo construído atual.
-
GetGenericParameterConstraints: retorna uma matriz de
Typeobjetos que representam as restrições no parâmetro de tipo genérico atual. - ContainsGenericParameters: retorna verdadeiro se o tipo ou qualquer um dos seus tipos ou métodos de delimitação contêm parâmetros de tipo para os quais não foram fornecidos tipos específicos.
-
GenericParameterAttributes: obtém uma combinação de sinalizadores
GenericParameterAttributesque descrevem as restrições especiais do parâmetro de tipo genérico atual. -
GenericParameterPositionPara um objeto
Typeque representa um parâmetro de tipo, obtém a posição do parâmetro de tipo na lista de parâmetros de tipo da definição de tipo genérico ou da definição de método genérico que declarou o parâmetro de tipo. -
IsGenericParameter: obtém um valor que indica se a corrente
Typerepresenta um parâmetro de tipo de um tipo genérico ou definição de método. - IsGenericTypeDefinition: obtém um valor que indica se a atual Type representa uma definição de tipo genérico, da qual outros tipos genéricos podem ser construídos. Retornará true se o tipo representar a definição de um tipo genérico.
- DeclaringMethod: retorna o método genérico que definiu o parâmetro de tipo genérico atual ou nulo se o parâmetro de tipo não foi definido por um método genérico.
- MakeGenericType: substitui os elementos de uma matriz de tipos para os parâmetros de tipo da definição de tipo genérico atual e retorna um Type objeto que representa o tipo construído resultante.
Além disso, os membros da MethodInfo classe habilitam informações de tempo de execução para métodos genéricos. Consulte as IsGenericMethod observações de propriedade para obter uma lista de condições invariáveis para termos usados para refletir sobre métodos genéricos:
- IsGenericMethod: Retorna verdadeiro se um método for genérico.
- GetGenericArguments: retorna uma matriz de objetos Type que representam os argumentos de tipo de um método genérico construído ou os parâmetros de tipo de uma definição de método genérico.
- GetGenericMethodDefinition: retorna a definição de método genérico subjacente para o método construído atual.
- ContainsGenericParameters: retorna true se o método ou qualquer um dos seus tipos de delimitação contêm parâmetros de tipo para os quais não foram fornecidos tipos específicos.
- IsGenericMethodDefinition: retorna true se a corrente MethodInfo representa a definição de um método genérico.
- MakeGenericMethod: substitui os elementos de uma matriz de tipos para os parâmetros de tipo da definição de método genérico atual e retorna um MethodInfo objeto que representa o método construído resultante.