Использование дуплексной службы WCF внутри службы RESTful - PullRequest
0 голосов
/ 26 октября 2011

Предположим, я хотел создать службу WCF WebHTTP ("ServiceREST"), которая имела ссылку на дуплексную службу ("ServiceDuplex").ServiceDuplex требует реализации определенных членов обратного вызова для доставки запрашиваемых данных.Например, вызов GetCustomers в ServiceDuplex вызывает метод в этой службе, который обслуживает клиентов обратно к клиенту с помощью обратного вызова «ReceiveCustomers».

При этом предположим, что мне нужен метод «GetSingleCustomer» в ServiceREST,Предполагая, что все данные извлекаются по требованию (а не кэшируются после запуска), мне нужно сначала вызвать «GetCustomers» из ServiceDuplex и подождать, пока моя коллекция будет заполнена внутри обратного вызова, который я реализую, прежде чем я смогу искать единственного клиентаМне нужно.

Поскольку webHttp не поддерживает обратные вызовы для клиента, я вынужден использовать что-то вроде AutoResetEvent внутри моего вызова GET (GetSingleCustomer), пока обратный вызов дуплекса не заполнит коллекцию.

Есть ли "лучшая практика" для того, что я пытаюсь сделать, или я пытаюсь сделать так неправильно, что такая практика не была создана?!

Спасибо за помощь.

1 Ответ

0 голосов
/ 26 октября 2011

Сохраняйте это простым, ServiceDuplex не делает то, что он должен делать, как, например, делать вызовы Async, а зачем вообще его использовать ... просто придерживайтесь только REST.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...