我不确定我是否在正确的路线上,但这是我正在尝试做的事情,我有一个Silverlight应用程序和一个WCF服务,Silverlight应用程序使用PollingDuplex“订阅”到WCF服务该服务可以将数据发送到任何有效的连接客户端。
该服务标有[ServiceContract(CallbackContract = typeof(IServiceCallback))]并且是单实例的
问题是还有另一项服务应该能够在此服务上调用标准方法来传递将分发给连接的Silverlight客户端的数据,但由于上述设置,它需要使用回调(I不能改变其他服务)。
如果有意义,是否可以在同一服务中同时使用两种类型的操作,回调和标准?
感谢您的时间
答案 0 :(得分:2)
是。有可能的。我猜CallbackContract参数不会阻止您将您的服务用作常规请求/响应服务(虽然我还没有尝试过)。
但对于相同的合同,您可能必须使用不同的绑定定义两个端点,一个使用PollingDuplexHttpBinding,另一个使用basicHttpBinding(使用silverlight,这是唯一的其他选项)。
您必须确保使用双工和基本http绑定从客户端调用正确的操作。