Ler em inglês

Compartilhar via


Type.IsGenericParameter Propriedade

Definição

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

C#
public abstract bool IsGenericParameter { get; }
C#
public virtual bool IsGenericParameter { get; }

Valor da propriedade

Boolean

true se o objeto Type representar um parâmetro de tipo de uma definição de tipo genérico ou de método genérico; caso contrário, false.

Exemplos

O exemplo a seguir usa a IsGenericParameter propriedade para testar parâmetros de tipo genérico em um tipo genérico.

C#
if (t.IsGenericType)
{
    // If this is a generic type, display the type arguments.
    //
    Type[] typeArguments = t.GetGenericArguments();

    Console.WriteLine("\tList type arguments ({0}):", 
        typeArguments.Length);

    foreach (Type tParam in typeArguments)
    {
        // If this is a type parameter, display its
        // position.
        //
        if (tParam.IsGenericParameter)
        {
            Console.WriteLine("\t\t{0}\t(unassigned - parameter position {1})",
                tParam,
                tParam.GenericParameterPosition);
        }
        else
        {
            Console.WriteLine("\t\t{0}", tParam);
        }
    }
}

Comentários

Type objetos que representam parâmetros de tipo genérico podem ser obtidos chamando o GetGenericArguments método de um Type objeto que representa uma definição de tipo genérico ou o GetGenericArguments método de um MethodInfo objeto que representa uma definição de método genérico.

  • Para um tipo genérico ou definição de método, a IsGenericParameter propriedade retorna true para cada elemento da matriz resultante.

  • Para um tipo ou método construído fechado, a IsGenericParameter propriedade retorna false para cada elemento da matriz retornada pelo GetGenericArguments método.

  • Para um tipo ou método construído aberto, alguns elementos da matriz podem ser tipos específicos e outros podem ser parâmetros de tipo. IsGenericParameter retorna false para os tipos e true para os parâmetros de tipo. O exemplo de código para a ContainsGenericParameters Propriedade demonstra uma classe genérica com uma mistura de tipos e parâmetros de tipo.

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

Aplica-se a

Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Confira também