鉴于我的客户端代码知道远程处理对象所需的一切,最简单的连接方法是什么?
这就是我现在正在做的事情:
ChannelServices.RegisterChannel(new HttpChannel(), false);
RemotingConfiguration.RegisterWellKnownServiceType(
typeof(IRemoteServer), "RemoteServer.rem", WellKnownObjectMode.Singleton);
MyServerObject = (IRemoteServer)Activator.GetObject(
typeof(IRemoteServer),
String.Format("tcp://{0}:{1}/RemoteServer.rem", server, port));
答案 0 :(得分:1)
前两行是服务器端代码,用于编组服务器对象,是吗?
在这种情况下,是的,第三行是客户端最简单的。
此外,如果在 IRemoteServer 界面中包含公共访问者,则可以从 MyServerObject 实例中提供其他服务器端对象,因此,访问这些对象成为主服务器对象上方法调用或属性访问的简单问题,因此您不必为每一件事使用激活器:
//obtain another marshalbyref object of the type ISessionManager:
ISessionManager = MyServerObject.GetSessionManager();
答案 1 :(得分:0)
WCF。
我在有WCF之前使用过IPC,相信我,IPC是一只熊。并没有完整/正确地记录。
连接到.NET远程服务器对象的最简单方法是什么? WCF。