0

假设我想创建一个引用双工服务(“ServiceDuplex”)的 WCF WebHTTP 服务(“ServiceREST”)。ServiceDuplex 需要实现某些回调成员来传递从它请求的数据。例如,对 ServiceDuplex 上的 GetCustomers 的调用会触发该服务上的一个方法,该方法通过回调“ReceiveCustomers”将客户服务回客户端。

话虽这么说,假设我想要一个 ServiceREST 上的方法“GetSingleCustomer”。假设所有数据都是按需检索的(而不是在启动后缓存),我必须首先从 ServiceDuplex 调用“GetCustomers”并等待我的集合填充到我实现的回调中,然后才能搜索单个客户我需要。

由于 webHttp 不支持对客户端的回调,我不得不在我的 GET (GetSingleCustomer) 调用中使用类似 AutoResetEvent 的东西,直到双工的回调填满集合。

对于我正在尝试做的事情,是否有“最佳实践”,或者我正在尝试做的事情是错误的以至于没有创建这样的实践?!

谢谢您的帮助。

4

1 回答 1

0

保持简单,ServiceDuplex 并没有做应该做的事情,比如使调用异步,那么为什么首先使用它……只坚持 REST。

于 2011-10-25T21:27:01.400 回答