2011-08-31 2 views
4

인스턴스화하려는 클래스에서 사용되는 모든 클래스가 직렬화 가능하지 않으므로 언 래핑 할 수 없습니다.appdomain에서 직렬화 할 수없는 클래스 래핑 해제

이것이 가능합니까? 그것에서 파생 MarshalByRefObject해야 오브젝트에 Unwrap 방법을 사용하기 위해

var appdom = AppDomain.CreateDomain(amServiceable.GetType().ToString()); 
var objectHandle = appdom.CreateInstance(amServiceable.GetType().Assembly.FullName, 
             amServiceable.GetType().FullName); 


var plugin = objectHandle.Unwrap() as IPlugin //throws an error. that some class in not marked serializable. 

답변

5

. 조작하려는 오브젝트가 다른 선택 사항이 아니면 유일한 다른 선택은 다른 도메인의 오브젝트를 조작하기 위해 다른 MarshalByRefObject을 사용하는 것입니다.

관련 문제