Служба WCF, использующая PollingDuplex, но также имеющая стандартный метод без обратных вызовов - PullRequest
2 голосов
/ 01 июля 2011

Я не уверен, что я на правильном пути, но это то, что я пытаюсь сделать, у меня есть приложение Silverlight и служба WCF, приложение Silverlight «подписывается» на службу WCF с помощью PollingDuplex ислужба может отправлять данные любым подключенным клиентам, которые работают.

Служба помечена как [ServiceContract (CallbackContract = typeof (IServiceCallback))], и это единственный экземпляр

Проблема в том, что естьдругая служба, которая должна иметь возможность вызывать стандартный метод для этой службы, чтобы передавать ей данные, которые будут распределены среди подключенных клиентов Silverlight, но из-за вышеуказанных настроек требуется использование обратных вызовов (я не могу изменить другую службу),

Есть ли способ иметь оба типа операций, обратный вызов и стандарт в одном сервисе, если это имеет смысл?

Спасибо за ваше время

1 Ответ

2 голосов
/ 01 июля 2011

Да.Это возможно.Я предполагаю, что параметр CallbackContract не помешает вам использовать ваш сервис в качестве обычного сервиса запросов / ответов (хотя я не пробовал его).

Но для одного и того же контракта вам, возможно, придется определить две конечные точки с разнымипривязки, одна с PollingDuplexHttpBinding, а другая с basicHttpBinding (с помощью Silverlight это единственный другой вариант).

Необходимо убедиться, что вы вызываете правильную операцию с клиентов, используя дуплексные и базовые привязки http.1005 *

...