0

我写了一个 WCF 服务,我想称之为网络管道绑定方式。我已将其部署在 Windows 服务中。

我在我的 wcf 服务中编写了这个方法:

Add(2,1)

它应该返回 3

我不知道如何在我的客户端控制台应用程序中调用 Windows 中托管的服务。我已经开始我的服务了。


笔记:

我想从 Windows 服务调用它。

4

3 回答 3

1

需要使用 ChannelFactory 创建代理,然后才能使用代理执行 wcf 任务。

http://www.switchonthecode.com/tutorials/wcf-tutorial-basic-interprocess-communication

于 2009-06-19T15:51:14.240 回答
0

你想要这样的东西:

NetNamedPipeBinding binding = new NetNamedPipeBinding();
EndpointAddress address = new EndpointAddress("net.pipe://localhost/Foo");
ChannelFactory<IFoo> factory = 
    new ChannelFactory<IFoo>(binding, address);

IFoo foo = factory.CreateChannel();
int result = foo.Add(2, 1);
于 2009-06-19T13:10:51.033 回答
0

如果IMyContract是您的服务合同,您可以创建一个代理来使用 ChannelFactory 类调用您的服务:

var proxy = ChannelFactory<IMyContract>.CreateChannel(new NetMsMqBinding(), new EndpointAddress("net.msmq://..."))
proxy.Add(1, 2);
于 2009-06-19T13:12:57.520 回答