我需要在全局程序域中调用自建的一个Appdomain反射的实例,怎么写?在http://www.cnblogs.com/chinhr/archive/2007/09/01/878259.html里简单的介绍了调用的方法:在子域里创建反射的类的实例,然后主域中调用其的代理,给出的代码::
proxy中调用具体的类:注意,具体调用一定不能再主域中
public IContext RunService(string serviceName,IContext ctx)
{
object o = this.service[serviceName];
((IService)o).RunService(ctx);
return ctx;
}
最后,主域中直接调用既可
proxy.RunService(xx,xx)
((IService)o).RunService(ctx);这句有点搞不懂
这句相当于
var obj=(IService)o;
obj.RunService(ctx);
因为子域中是跨域对象(System.MarshalByRefObject),并且继承IServce接口, 因此在主域中,可以转换为IService接口,用于调用。