ResolveEventArgs.RequestingAssembly Propriedade

Definição

Obtém a assembly cuja dependência está a ser resolvida.

public:
 property System::Reflection::Assembly ^ RequestingAssembly { System::Reflection::Assembly ^ get(); };
public System.Reflection.Assembly RequestingAssembly { get; }
member this.RequestingAssembly : System.Reflection.Assembly
Public ReadOnly Property RequestingAssembly As Assembly

Valor de Propriedade

A assembleia que pediu o item especificado pela Name propriedade.

Observações

O assembly que é devolvido por esta propriedade é um assembly que não conseguiu resolver o item especificado pela Name propriedade, porque o item não existia nesse assembly, em nenhuma das suas dependências carregadas, ou em quaisquer dependências que o loader pudesse encontrar através da sondagem.

Por exemplo, suponha que o conjunto atual usa o Assembly.LoadFile método para carregar o conjunto A a partir de um diretório fora do caminho de sondagem, para usar a classe CA. Suponha ainda que a classe CA usa a classe CB, na assembly B, e que a assembly A tem uma referência em tempo de compilação para a assembly B, também localizada fora do caminho de sondagem. Quando o conjunto atual tenta instanciar o CA, o carregador tenta resolver a referência ao conjunto B. No entanto, como o assembly A foi carregado usando o Assembly.LoadFile método, o carregador não consegue resolver a dependência. Se existir um manipulador para o AppDomain.AssemblyResolve evento, o evento é elevado, e a RequestingAssembly propriedade do objeto resultante ResolveEventArgs contém a montagem A, porque a montagem A é a montagem que não tem uma dependência.

A semântica da RequestingAssembly propriedade varia, dependendo de como o assembly solicitante foi carregado:

  • Contexto de carga: O valor da propriedade pode ser null. O contexto de carga é independente da ordem de carga, e a identidade do conjunto requerente não é necessariamente significativa. Um exemplo não nulo ocorre quando o Type.GetType método é chamado e o tipo especificado não é conhecido pela assembly solicitante nem por nenhuma das suas dependências.

  • Contexto load-from: A propriedade pode ser usada como dica de sondagem, mas o gestor de eventos não deve receber mais do que um pedido para um dado nome de assembly.

  • Sem contexto (ou seja, o assembly solicitante foi carregado usando o Assembly.LoadFile método, ou como um fluxo de bytes, ou em modo misto): O handler pode usar a RequestingAssembly propriedade para carregar diferentes implementações do mesmo assembly com base na identidade do assembly solicitante.

Aplica-se a

Ver também