WCF服务作为服务器和客户端

时间:2011-10-14 08:38:38

标签: .net wcf

我有一个WCF服务,它是网状网络的一部分。这意味着有10多台机器暴露相同的服务,但所有这些机器也需要连接到其他机器来检索数据。这意味着应用程序既可以公开服务,也可以连接到其他计算机上的相同服务。

目前,我已在程序内添加了服务引用,但由于该程序是服务,因此它似乎相当浪费。这意味着我基本上已经创建了一个自身的服务引用,每当我改变某些东西时我都必须更新这个引用。

我可以解决这个问题,并在不添加服务引用的情况下使用该服务吗?

问题是如果没有Service引用,我没有用于设置服务的代理类。目前,要连接到另一台机器上的服务,我使用如下代码:

var client = new MyServiceClient(binding, otherMachineEndpointAddress);
//call some methods on client

如果我可以替换创建服务客户端的这一部分,连接到服务并调用我的方法,应用程序将大大简化。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我试图找到答案很长一段时间,但在发布这个问题之后我发现了怎么做,而且一直都很容易。

我用这个

替换了问题中提到的代码
var client = ChannelFactory<IMyService>.CreateChannel(binding, otherMachineEndpointAddress);
//call some methods on client

作为魅力;)

相关问题