我想知道是否有办法强制客户端在双工WCF服务上调用特定方法。我的情况就是这样,我的服务实现将保留一组订阅者。这种方法的问题是,如果客户端不调用Subscribe()会怎么样?我在想,在我的客户端界面中,我有一个名为Subscribe的方法,但是由于实际调用该服务的代码仍然可以被排除在实现之外,因此这并没有让我感到满意。这可能吗?
谢谢!
答案 0 :(得分:1)
Duplex WCF服务使用WCF会话,因此您可以使用以下方式标记您的Subscribe方法:
[OperationContract(IsInitiating=true)]
void Subscribe();
所有其他方法都有IsInitiating=false
,因为Subscribe
方法必须是第一个调用来启动新会话的方法。您还可以使用IsTerminating=true
的特殊方法关闭会话。