ResolveEventArgs.RequestingAssembly Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá sestavení, jejíž 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í, které je vráceno touto vlastností, je sestavení, které nebylo schopno přeložit položku určenou Name vlastností, protože položka neexistovala v tomto sestavení, v žádné z jeho načtených závislostí nebo ve všech závislostech, 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 ca třídy. Předpokládejme dále, že certifikační autorita třídy používá třídu CB v sestavení B a že sestavení A má odkaz na sestavení B, které se také nachází 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 závislost vyřešit. Pokud existuje obslužná rutina události AppDomain.AssemblyResolve , událost je vyvolána a RequestingAssembly vlastnost výsledného ResolveEventArgs objektu obsahuje sestavení A, protože sestavení A je sestavení, ve kterém 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 načítání je nezávislý na pořadí načítání a identita požadovaného sestavení nemusí být nutně smysluplná. Příklad, který není null, nastane, když Type.GetType je volána metoda a zadaný typ není znám žádajícímu sestavení nebo žádné z jeho závislostí.Načtení z kontextu: Vlastnost lze použít jako nápovědu ke zkoumá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 (to znamená, že požadované sestavení bylo načteno pomocí Assembly.LoadFile metody, jako datový proud bajtů nebo ve 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 žádajícího sestavení.