我现在正在进行WCF编码,问题非常标准:
我需要我的WCF服务器来管理硬件设备,所以我一次只允许一个客户端。我确实尝试了在网站上找到的一些解决方案,但都没有
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single,
ConcurrencyMode = ConcurrencyMode.Multiple)]
也没有添加
<behavior name="Throttled">
<serviceThrottling maxConcurrentCalls="1"
maxConcurrentSessions="1"
maxConcurrentInstances="1" />
</behavior>
不阻止我运行第二个应用程序并破坏服务器。
我是否应该了解有关客户端身份验证的更多信息,或者我可以添加一条神奇的线来解决此问题?
答案 0 :(得分:0)
正如我之前提到的,所有这些行动都是不够的。看起来关键是要维护WCF会话模式 - 所以,我用wsHttpBinding而不是basicHttpBinding(不允许维护会话)添加[ServiceContract (SessionMode = SessionMode.Required)]
。
现在它有效。