Compartilhar via


CodeTypeReference.BaseType Propriedade

Definição

Obtém ou define o nome do tipo sendo referenciado.

public:
 property System::String ^ BaseType { System::String ^ get(); void set(System::String ^ value); };
public string BaseType { get; set; }
member this.BaseType : string with get, set
Public Property BaseType As String

Valor da propriedade

O nome do tipo que está sendo referenciado.

Comentários

Essa propriedade contém o nome do tipo, a menos que seja um tipo de matriz, nesse caso, é o tipo de elemento de matriz.

Observação

O nome da propriedade pode ser enganoso. Essa propriedade contém apenas o nome do tipo com qualquer adorno de matriz ou argumentos de tipo genérico removidos, não o tipo base ou pai, como poderia ser esperado. Por exemplo, o valor BaseType para System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]] é System.Collections.Generic.Dictionary`2.

Representação de tipos genéricos

As informações nesta seção destinam-se a desenvolvedores do provedor CodeDom e se aplicam apenas a linguagens compatíveis com CLS. O valor retornado pode conter tipos genéricos. Os tipos genéricos são formatados com o nome do tipo seguido por um acento grave ("'") seguido por uma contagem dos argumentos de tipo genérico. Os argumentos de tipo genérico podem ser encontrados no CodeTypeReferenceCollection retornado pela TypeArguments propriedade . Os valores retornados por BaseType e associados TypeArguments contêm o mesmo conteúdo que o valor do tipo retornado pela reflexão.

Por exemplo, um construído Dictionary<TKey,TValue> em que K é uma cadeia de caracteres e V é um construído List<T> de inteiros é representado pela reflexão como o seguinte (com as informações do assembly removidas):

System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Generic.List`1[[System.Int32]]]]  

Analisar recursivamente a BaseType propriedade do CodeTypeReference para Dictionary<TKey,TValue> produz as mesmas cadeias de caracteres que a representação de reflexão acima:

A contagem de argumentos de tipo deve ser usada ao analisar os valores associados TypeArguments . A prática comum é remover a contagem de argumentos de tipo do código gerado, mas a prática é específica do compilador. É importante observar que a contagem de argumentos de tipo pode ser encontrada em um nome de tipo aninhado; nesse caso, ela é seguida por um sinal de adição ("+").

Observação

Ao criar um genérico CodeTypeReference, a prática recomendada é especificar os argumentos de tipo como CodeTypeReference objetos ou usar o construtor que usa um Type. O uso do construtor que cria um CodeTypeReference de uma cadeia de caracteres pode levar a erros de argumento de tipo desconhecidos.

Aplica-se a