MethodBase.ContainsGenericParameters Propriedade

Definição

Obtém um valor que indica se o método genérico contém parâmetros de tipo genérico não atribuídos.

public:
 virtual property bool ContainsGenericParameters { bool get(); };
public virtual bool ContainsGenericParameters { get; }
member this.ContainsGenericParameters : bool
Public Overridable ReadOnly Property ContainsGenericParameters As Boolean

Valor da propriedade

true se o objeto atual MethodBase representar um método genérico que contém parâmetros de tipo genérico não atribuídos; caso contrário, false.

Comentários

Um método genérico só poderá ser invocado se não houver definições de tipo genérico ou tipos construídos abertos nos argumentos de tipo do próprio método ou em qualquer tipo delimitador. Como os tipos podem ser arbitrariamente complexos, tornar essa determinação recursiva é difícil. Para conveniência e para reduzir a chance de erro, a ContainsGenericParameters propriedade fornece uma maneira padrão de distinguir entre métodos construídos fechados, que podem ser invocados e abrir métodos construídos, o que não pode. Se a ContainsGenericParameters propriedade retornar true, o método não poderá ser invocado.

A ContainsGenericParameters propriedade pesquisa recursivamente parâmetros de tipo. Por exemplo, ele retorna true para qualquer método em um tipo A<T> aberto (A(Of T) no Visual Basic), mesmo que o método em si não seja genérico. Contraste isso com o comportamento da IsGenericMethod propriedade , que retorna false para esse método.

Da mesma forma, o parâmetro de ContainsGenericParameters propriedade retorna true para qualquer construtor em um tipo aberto, mesmo que os construtores não possam ter parâmetros de tipo próprios.

Para obter uma lista das condições invariáveis para termos específicos a métodos genéricos, consulte a IsGenericMethod propriedade . Para obter uma lista das condições invariáveis para outros termos usados na reflexão genérica, consulte a Type.IsGenericType propriedade .

Aplica-se a

Confira também