2011-05-10 21 views
6

Şu anda özel eklentimi DLL Kitaplığı olarak kopyalamak istediğim bir "PlugInFolder" klasörüne sahibim. Her eklenti "IPlugIn" arayüzümü uygular.Windsor Castle ile dizinden DLL alınıyor

Onları Windsor Kalesi ile çalışma zamanında almak istiyorum.

Ben sonuç olmadan böyle bir şey denedim:

Type ImageEditorInterfaces.IPlugIn is abstract. 
As such, it is not possible to instansiate it as implementation of service ImageEditorInterfaces.IPlugIn. 

cevap

6

böyle bir şey deneyin:

container.Register(AllTypes 
    .FromAssemblyInDirectory(new AssemblyFilter("PlugInFolder")) 
    .BasedOn<IPlugIn>()); 
+0

WOW

CastleContainer.Instance .Install( FromAssembly.InDirectory(new AssemblyFilter("PlugInFolder")) ); CastleContainer.Instance.Register(Component.For<IPlugIn>()); IPlugIn[] plugIn= CastleContainer.Instance.ResolveAll<IPlugIn>(); 

bu hata alırsınız! Harika çalışıyor! – danyolgiax

İlgili konular