Generics e reflexo (guia de programação C#)

sistema autônomo o CLR (Common linguagem tempo de execução) tem acesso às informações de tipo genérico em time de execução, você pode usar a reflexão para obter informações sobre tipos genéricos da mesma maneira que para tipos não genéricos.Para obter mais informações, consulte Genéricos no time de execução (guia de programação translation from VPE for Csharp).

No .NET Framework 2,0 vários novos membros são adicionados ao Type classe para permitir que informações em time de execução para tipos genéricos. Consulte a documentação dessas classes para obter mais informações sobre como usar esses métodos e propriedades. The System.Reflection.Emit namespace também contém novos membros que oferecem suporte a genéricos. Consulte Como: Definir um tipo genérico com Reflexo emissão.

Para obter uma lista das condições invariável para termos usados na reflexão genérico, consulte o IsGenericType propriedade comentários.

Nome do membro de sistema.Type

Descrição

IsGenericType

Retorna true se um tipo é genérico.

GetGenericArguments

Retorna uma matriz de Type objetos que representam os argumentos de tipo fornecido para um tipo construído ou parâmetros de uma definição de tipo genérico.

GetGenericTypeDefinition

Retorna a definição de tipo genérico subjacente para o tipo construído corrente.

GetGenericParameterConstraints

Retorna uma matriz de Type objetos que representam as restrições no parâmetro de tipo genérico corrente.

ContainsGenericParameters

Retorna true se o tipo ou qualquer um dos seus tipos ou métodos delimitador contêm parâmetros de tipo para o qual não tenham sido fornecidos tipos específicos.

GenericParameterAttributes

Obtém uma combinação de GenericParameterAttributes sinalizadores que descrevem as restrições especiais do parâmetro de tipo genérico corrente.

GenericParameterPosition

Para um Type objeto que representa um parâmetro de tipo, obtém a posição do parâmetro de tipo na lista Tipo de parâmetro da definição de tipo genérico ou definição de método genérico que o parâmetro de tipo declarado.

IsGenericParameter

Obtém um valor que indica se o corrente Type representa um parâmetro de tipo de uma definição de tipo ou método genérico.

IsGenericTypeDefinition

Obtém um valor que indica se o corrente Type representa uma definição de tipo genérico, do qual outros tipos genéricos podem ser construídos. Retorna true se o tipo de representa a definição de um tipo genérico.

DeclaringMethod

Retorna o método genérico genérica corrente definido o parâmetro de tipo 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 corrente e retorna um Type objeto que representa o resultante construído tipo.

Além disso, novos membros são adicionados à MethodInfo classe para permitir que informações em time de execução de métodos genéricos. Consulte o IsGenericMethod comentários de propriedade para obter uma lista de condições invariável para termos usados para refletir sobre métodos genéricos.

Nome do membro sistema.reflexão.MemberInfo

Descrição

IsGenericMethod

Retorna true se um método é genérico.

GetGenericArguments

Retorna uma matriz de objetos do tipo 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 do método genérico subjacente para o método construído corrente.

ContainsGenericParameters

Retorna true se o método ou qualquer de seus tipos de delimitador contêm quaisquer parâmetros de tipo para o qual não tenham sido fornecidos tipos específicos.

IsGenericMethodDefinition

Retorna true se o 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 corrente e retorna um MethodInfo objeto que representa o resultante construído método.

Consulte também

Conceitos

Guia de Programação C#

Visão geral de Reflexo e genéricos

Referência

Generics (Guia de programação C#) 

Outros recursos

Classes genéricas no .NET Framework