我有一个Windows应用程序,它托管两个服务netTCPBinding
,还有一些客户端对话框。
其中一项服务是双工。当我运行我的软件的两个不同实例(一个作为服务器,一个作为客户端)时,没有问题。
但是,当我只运行一个实例作为服务器和客户端(串联)时,双工服务不起作用。问题发生在Subscribe()
方法调用上。超时异常后,将调用主机的Subscribe()
方法。
你知道如何解决这个问题吗?
答案 0 :(得分:0)
您的问题中没有足够的信息来提供详细的答案,我不确定,但我还是试一试。
我敢打赌你的问题在于重入行为:只需用以下内容标记你的服务实现:
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Reentrant)]
这将允许您在处理请求时来自同一端点的来电。
答案 1 :(得分:0)
问题不在于WCF。这是因为StreamInsight。如果您在嵌入式StreamInsight方案中使用基于WCF的接收器,请注意在事件进入查询之前不会生成接收器。就我而言,在将数据发送到源之前,无法首先连接到接收器。