मैं प्लगइन के साथ एक प्रणाली विकसित करता हूं, जो रनटाइम पर असेंबली लोड करता है। मेरे पास एक सामान्य इंटरफ़ेस लाइब्रेरी है, जिसे मैं सर्वर और उसके प्लगइन के बीच साझा करता हूं। लेकिन, जब मैं प्लगइन फ़ोल्डर के लिए LoadFrom करते हैं और सभी प्रकार है, जो आम इंटरफेस IServerModule
लागू मैं क्रम अपवाद मिल खोजने की कोशिश:असेंबली को सही तरीके से लोड कैसे करें
प्रकार 'ServerCore.IServerModule' 'ServerCore.dll' और 'दोनों में मौजूद है ServerCore.dll '
मैं लोड प्लगइन्स इस तरह:
foreach (var dll in dlls)
{
var assembly = Assembly.LoadFrom(dll);
var modules = assembly.GetExportedTypes().Where(
type => (typeof (IServerModule)).IsAssignableFrom(type)
&& !type.IsAbstract &&
!type.IsGenericTypeDefinition)
.Select(type => (IServerModule)Activator.CreateInstance(type));
result.AddRange(modules);
}
मैं कैसे इस मुसीबत से निपटने कर सकते हैं?
मैं किसी भी मदद
आप इस देखा है? http://stackoverflow.com/questions/1057853/the-type-type-exists-in-both-dlls – Halvard
@ हलावार्ड हां, मैं करता हूं। लेकिन मेरे पास अलग-अलग संस्करण नहीं हैं, मुझे लोड से परेशानी है, जो मुझे दो बार समान असेंबली लोड करता है –
क्या यह ** ** एक ही ** असेंबली लोड करता है या क्या यह ** एक समान ** असेंबली को दो बार लोड करता है? – Halvard