.Net remoting:反转连接

时间:2011-10-03 14:39:24

标签: .net remoting

好的,这是我第一次使用.net远程处理,但到目前为止看起来很有趣。

创建一个公开远程处理对象然后从客户端使用它的服务器是件小事,就像魅力一样。 (我正在使用TcpChannel btw)

我现在要做的是扭转连接。 目前,服务器打开一个端口并侦听客户端,客户端连接并获取对象的引用并享受它的乐趣。 我唯一想要改变的是客户端将等待连接而不是服务器。 该对象仍应在服务器上创建并从客户端使用。

这对任何人都有意义吗?! 如果是这样,这可能吗?

1 个答案:

答案 0 :(得分:1)

使用Remoting时,就“服务器”和“客户端”这两个术语的含义达成一致意见非常有用。 “服务器”是正在侦听连接的机器。 “客户端”是启动连接的机器。

使用这些定义,您希望客户端启动连接,然后让客户端创建的对象上的服务器调用方法。

所以你想要的是:

  • 客户端创建一个MarshalByReferenceObject,其中包含服务器将调用的方法。
  • 客户端启动与服务器的连接,并将该对象引用传递给服务器。
  • 服务器存储该对象引用,并根据需要调用该对象上的方法。

所有这一切,我同意评论说你应该使用WCF而不是远程处理。