Sdílet prostřednictvím


ResolveEventArgs.RequestingAssembly Vlastnost

Definice

Získá sestavení, jehož závislost je vyřešena.

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

Hodnota vlastnosti

Sestavení, které požadovalo položku určenou Name vlastností.

Poznámky

Sestavení vrácené touto vlastností je sestavení, které nemohlo přeložit položku určenou Name vlastností, protože položka v tomto sestavení neexistuje, v žádné z načtených závislostí nebo v jakékoli závislosti, které zavaděč mohl najít prostřednictvím sondy.

Předpokládejme například, že aktuální sestavení používá metodu Assembly.LoadFile k načtení sestavení A z adresáře mimo cestu sondy, aby bylo možné použít certifikační autoritu třídy. Předpokládejme dále, že certifikační autorita třídy používá cb třídy v sestavení B a že sestavení A má odkaz na sestavení B, který se nachází také mimo cestu sondy. Když se aktuální sestavení pokusí vytvořit instanci ca, zavaděč se pokusí přeložit odkaz na sestavení B. Vzhledem k tomu, že sestavení A bylo načteno pomocí Assembly.LoadFile metody, zavaděč nemůže přeložit závislost. Pokud je obslužná rutina události AppDomain.AssemblyResolve , je vyvolána událost a RequestingAssembly vlastnost výsledného ResolveEventArgs objektu obsahuje sestavení A, protože sestavení A je sestavení, které chybí závislost.

Sémantika RequestingAssembly vlastnosti se liší v závislosti na tom, jak bylo načteno požadované sestavení:

  • Kontext načtení: Hodnota vlastnosti může být null. Kontext zatížení je nezávislý na pořadí zatížení a identita požadovaného sestavení nemusí nutně dávat smysl. Příklad, který není null, nastane, když Type.GetType je volána metoda a zadaný typ není známo pro žádající sestavení nebo jakékoli jeho závislosti.

  • Načtení z kontextu: Vlastnost lze použít jako nápovědu pro sondování, ale obslužná rutina události by neměla získat více než jeden požadavek pro daný název sestavení.

  • Žádný kontext (tj. požadavekující sestavení byl načten pomocí Assembly.LoadFile metody nebo jako bajtový datový proud nebo v smíšeném režimu): Obslužná rutina může použít RequestingAssembly vlastnost k načtení různých implementací stejného sestavení na základě identity požadovaného sestavení.

Platí pro

Viz také