2012-12-05 28 views
14

मैं एक ऐपडोमेन को गतिशील रूप से एक असेंबली लोड करने की कोशिश कर रहा हूं। मुझे ऐसा करने की ज़रूरत है क्योंकि मैं गतिशील रूप से एक विधि को कॉल करना चाहता हूं, लेकिन मेरा ऐप चल रहा है, जबकि हैंडल को डीएलएल में न रखें, ताकि जरूरत पड़ने पर इसे प्रतिस्थापित किया जा सके। लेकिन मैं इस SerializationException अपवाद हो रही है:सीरियलाइजेशन अपवाद: सदस्य के लिए प्रकार हल नहीं किया गया है "..."

AppDomain domain = AppDomain.CreateDomain("Temp AppDomain", null, AppDomain.CurrentDomain.SetupInformation); 
try { 
    object obj = domain.CreateInstanceFromAndUnwrap(dllPath, typeName); 
    IMyInterface myObj = (IMyInterface) obj; 
    result = myObj.MyMethod(something); 
} 
finally { 
    AppDomain.Unload(domain); 
} 
+3

यह जानने के लिए कि वह उस सदस्य के प्रकार के साथ असेंबली क्यों नहीं ढूंढ पा रहा है, Fuslogvw.exe का उपयोग करें। –

उत्तर

28

उत्तर:: प्रकार सदस्य के लिए हल नहीं होती है "..."

यहाँ मेरी कोड है प्रकार MarshalByRefObject का विस्तार करने के लिए किया था।