.net Remoting小结2

来源:互联网 发布:js设置style属性 编辑:程序博客网 时间:2024/05/16 06:49

.net Remoting远程对象的类型有几种呢?

    我们的观念需要转变了,.net是一个内容很丰富的框架平台。它支持多种服务,提供了多种服务环境。
象netRemoting服务,驻留com+之上的.net-Com+服务,驻留IIs上的Asp.net框架服务和webservice服务等等。

首先在.net中远程对象继承自MarselRefObject这个类,这样就把你创建的对象局限于应用程序域中, .net的运行时会根据MarselRefObject的一些控制元数据信息和相关的配置文件,还有你的编码信息,搭建.net-Remoting的服务环境。你的这个远程对象就不会按值或者按类在客户和服务器之间传递,它只能按引用编组传递。

在.net-remoting服务中,客户端和服务器之间可以把值和类(可串行化的实现了serializlable的)传递。

在.net-remoting 和webservice 中间一个重要的区别,除了跨平台之外,那就是安全性。webservice串行化,只传递对象共有的字段和属性,而remoting则不是,它传递包括私有字段和属性。remoting提供了两种并行化级别。

默认的低级并行化和完全并行化,客户端不能传递ObjRef类型的对象以及实现ISponsor接口的对象到服务器端。
可以通过编程方式改变信道传输的安全级别。
    BinaryFormatterSinkprovidor sp=new BinaryFormatterSinkProvidor();
   sp.TypeFilterLevel=TypeFilterLevel.Full----完全并行化。
然后初始化信道,则信道就具备了完全并行化。在实现事件回调时,信道就必须设置此级别,因为服务器需要远程调用客户端的EventSink对象。

 

原创粉丝点击