Aracılığıyla paylaş


ResolveEventArgs.RequestingAssembly Özellik

Tanım

Bağımlılığı çözümlenen derlemeyi alır.

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

Özellik Değeri

özelliği tarafından Name belirtilen öğeyi isteyen derleme.

Açıklamalar

Bu özellik tarafından döndürülen derleme, öğe bu derlemede, yüklenen bağımlılıklarında veya yükleyicinin yoklama aracılığıyla bulabileceği bağımlılıklarda mevcut olmadığından özelliği tarafından Name belirtilen öğeyi çözümleyemeyen bir derlemedir.

Örneğin, geçerli derlemenin sınıf CA'sını Assembly.LoadFile kullanmak için A derlemesini yoklama yolunun dışındaki bir dizinden yüklemek için yöntemini kullandığını varsayalım. Sınıf CA'sının B derlemesinde CB sınıfını kullandığını ve A derlemesinin de yoklama yolunun dışında bulunan B derlemesine derleme zamanı başvurusu olduğunu varsayalım. Geçerli derleme CA'yı örneklemeye çalıştığında, yükleyici B derlemesine başvuruyu çözümlemeye çalışır. Ancak, A derlemesi yöntemi kullanılarak yüklendiğinden Assembly.LoadFile , yükleyici bağımlılığı çözümleyemez. Olay için AppDomain.AssemblyResolve bir işleyici varsa, olay oluşturulur ve RequestingAssembly A derlemesi bağımlılık eksik olan derleme olduğundan, sonuçta elde edilen ResolveEventArgs nesnenin özelliği A derlemesini içerir.

özelliğin RequestingAssembly semantiği, istekte bulunan derlemenin nasıl yüklendiğine bağlı olarak değişir:

  • Yük bağlamı: özelliğinin değeri olabilir null. Yük bağlamı yük sırası bağımsızdır ve istekte bulunan derlemenin kimliği mutlaka anlamlı değildir. Null olmayan bir örnek, yöntem çağrıldığında ve belirtilen tür istekte bulunan derleme veya bağımlılıklarından herhangi biri tarafından bilinmediğinde Type.GetType oluşur.

  • Yük kaynağı bağlamı: Özelliği bir yoklama ipucu olarak kullanılabilir, ancak olay işleyicisi belirli bir derleme adı için birden fazla istek almamalıdır.

  • Bağlam yok (başka bir ifadeyle, istekte bulunan derleme yöntemi kullanılarak Assembly.LoadFile veya bayt akışı olarak ya da karma modda yüklendi): İşleyici, istekte bulunan derlemenin kimliğine göre aynı derlemenin farklı uygulamalarını yüklemek için özelliğini kullanabilir RequestingAssembly .

Şunlara uygulanır

Ayrıca bkz.