当前位置:编程学习 > C#/ASP.NET >>

Remoting编程知识一

Remoting基础
基本原理
当客户端创建远程RemotableClass的一个实例,.NET框架在客户端应用程序域中产生一个代理。该代理看起来就像实际对象。代理收到调用后,通过通道连接到远程的对象。
一、编写步骤
第一步
编写一个DLL,其中包含所要Remottable的类
public class RemotableClass:MarshalByRefObject
{
….
}
第二步
服务器进程注册该remotable 类以便其他应用程序可以激活。根据该对象是如何激活,服务器通过两种静态方法来注册:RegisterActivatedServiceType或者RegisterWellKnownServiceType。下面的语句使用RegisterWellKnownServiceType来注册RemotableClass,以便远程激活。
RemotingConfiguration.RegisterWellKnownServiceType(
Typeof(RemotableClass), //Remotable类
“RemoteObject”, // Remotable类的URI
WellKnownObjectMode.SingleCall); //激活模式
第一个参数是指能远程化的类。
第二个是指客户端使用来激活对象的URI----也就是客户端告诉服务器来激活
RemotableClass实例的URI。
第三个参数指定激活模式。有两种选择。WellKnownObjectMode.SingleCall是指为客户端的每一次调用创建一个新的实例。WellKnownObjectMode.Singleton是指创建一个RemotableClass实例来处理所有客户端的调用。
第三步
为了使客户端可以使用RemotableClass,服务器进程必须创建,注册一个通道。该通道提供对象和远程客户端交流的一个渠道。在服务器端,.NET框架提供了两种通道:
System.Runtime.Remoting.Channels.Tcp.TcpServerChannel:可以接受远程客户端的TCP连接。
System.Runtime.Remoting.Channels.Http.HttpServerChannel:接受HTTP连接。
下面的语句创建一个在1234端口监听的TcpServerChannel通道,并用.NET框架注册:
TcpServerChannel channel = new TcpServerChannel(1234);
补充:asp.net教程,基础入门 
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,