本身已有.NET REMOTING的实现,在调用远程对象的接口的某个方法后,会返回另外一个MarshalByRefObject对象接口,客户端获取此接口后,可以使用此接口的方法,和使用remoting信道里面的远程对象接口几乎一样,现有要求从remoting转移到WCF,远程对象直接用服务契约搞定,但返回MarshalByRefObject对象的方法调用时无法正常工作,查阅资料,发现wcf返回的对象,必须标注DataContract,但此法貌似只能返回普通的对象啊,无法做到返回一个MarshalByRefObject对象的要求。问题的实质是,我想在服务的方法中返回另外一个服务,在remoting中,返回的对象不需要在信道中注册,wcf中能够做到吗?请各路高人现身!wcf

解决方案 »

  1.   

    意思是wcf无法实现了?不是这么悲剧吧,举例说明一下,通过远程对象接口在服务器上创建一个控件,并将此控件对象(接口)返回给客户端,客户端就可以通过返回的接口,对远程服务器窗体上某个控件进行直接控制,remoting中这个可以工作的很好,调试可以看到,返回给客户端是一个封装的proxy对象,wcf有类似机制吗?
      

  2.   

    不光wcf不能实现,任何 web service com+ dcom remoting等等rpc技术都不能实现。要是能实现,我们也不需要什么多处理器计算机,什么HPC了,把所有的PC用网线一连就是超级计算机了。
      

  3.   

    WCF是用的标准XML序列化来传输数据的,不支持XML序列化的对象都是不能使用的。