Remoting已经是n年前的技术了,可怜我这个从事软件开发三年的人还未有使用过这个技术,更加别提对这个技术有多么的了解。惭愧的紧啊。现说说我根据网上示例改编的Remoting远程验证用户登录。
Remoting接口对象声明,定义服务器与客户端交互且要处理的两个接口(从真正意义是理解的接口的作用):
IUseLoginReponse:用户登录响应接口,客户响应远程对象,服务器端给对象传递登录信息。
IUseLoginRequest:用户登录请求接口,客户端发送请求对象,服务器端接收远程客户对象,并处理。
服务器端处理的远程Remoting对象声明,它继承IUseLoginRequest接口:
UseLonginRemoting:IUseLoginRequest,MarshalByRefObject
实现了方法
public void UseLogin(string name, string password, IUseLoginReponse reponse)
参数中reponse对象也是客户端发送过来的对象,服务器对登录处理后会调用reponse的响应方法,又通过Remoting到客户端的reposnse对象执行方法。
客户端继承IUseLoginReponse接口,表示服务器处理请求后,客户端的响应方法:
UseLoginReponseHandler:IUseLoginReponse,MarshalByRefObject
实现了方法
public void LoginResult(bool res, string msg)
表示响应对象通过IUseLoginRequest远程请求对象请求服务器处理后,返回服务器处理调用的客户端响应方法,参数由处理结果设定。
接下来就是客户端转换远程对象代理并请求调用,中间传递客户端远程对象:
IUseLoginRequest proxy = (IUseLoginRequest)Activator.GetObject(typeof(IUseLoginRequest), remoteAddress);
UseLoginReponseHandler ulrh = new UseLoginReponseHandler()
proxy.UseLogin(loginname, password, ulrh);
基本上就是这样,联系我有源码!