MethodBase.ContainsGenericParameters Propriedade
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.
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 .