PortableExecutableReference.GetMetadataImpl Método
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.
Obter representação de metadados para o arquivo PE.
protected:
abstract Microsoft::CodeAnalysis::Metadata ^ GetMetadataImpl();
protected abstract Microsoft.CodeAnalysis.Metadata GetMetadataImpl ();
abstract member GetMetadataImpl : unit -> Microsoft.CodeAnalysis.Metadata
Protected MustOverride Function GetMetadataImpl () As Metadata
Retornos
Exceções
Se o formato de imagem PE for inválido.
O conteúdo da imagem de metadados não pode ser lido.
A imagem de metadados é armazenada em um arquivo que não pode ser encontrado.
Comentários
Chamado quando é Compilation necessário ler os metadados de referência.
As exceções listadas são capturadas e convertidas em diagnóstico de compilação. Qualquer outra exceção é considerada um erro inesperado na implementação e não é capturada.
Metadata objetos podem armazenar em cache informações decodificadas da imagem PE. Reutilização de Metadata instâncias entre referências de metadados resultará em melhor desempenho.
A chamada Compilation não assume a Metadata propriedade dos objetos retornados por esse método. A implementação precisa recuperar o objeto de um provedor que gerencia seu tempo de vida (como o cache de metadados). O Metadata objeto é mantido vivo pelo Compilation chamado Microsoft.CodeAnalysis.PortableExecutableReference.GetMetadataNoCopy e por todas as compilações criadas a partir dele por meio de chamadas para métodos With-factory ativados Compilation, além de WithReferences(MetadataReference[]) sobrecargas. Uma compilação criada usando WithReferences(MetadataReference[]) chamará novamente Microsoft.CodeAnalysis.PortableExecutableReference.GetMetadataNoCopy .