有很多材料解释了为什么使用 svcutil.exe(或“添加服务引用”)不好 - 缺乏可测试性、紧密耦合等。为简单服务手动创建客户端代理很简单,您只需要手动创建接口和创建频道:
IMessageServiceAsync service = new ChannelFactory<IMessageServiceAsync>("BasicHttpBinding_IMessageEndpoint").CreateChannel();
我想做类似的事情,但对于 Silverlight PollingDuplex 客户端。
这似乎更困难 - 生成的客户端继承自System.ServiceModel.DuplexClientBase
- 我假设我手动创建的客户端也需要?或者有没有办法在不实现这个基类的情况下连接所有客户端 Duplex 回调功能?
有没有人试过这个?甚至可能吗?