Заставить клиента вызывать метод службы? - PullRequest
0 голосов
/ 26 апреля 2011

Мне интересно, есть ли способ заставить клиента вызывать определенный метод в дуплексной службе WCF. Моя ситуация такова, что реализация моего сервиса будет поддерживать сбор подписчиков. Проблема этого подхода в том, что если клиент не вызывает Subscribe ()? Я думал, что в моем клиентском интерфейсе у меня будет метод, называемый Subscribe, но он никуда меня не приведет, так как код для фактического вызова службы все еще может быть исключен из реализации. Возможно ли это?

Спасибо!

1 Ответ

1 голос
/ 26 апреля 2011

Дуплексная служба WCF использует сеанс WCF, поэтому вы можете пометить свой метод подписки с помощью:

[OperationContract(IsInitiating=true)]
void Subscribe();

Все остальные методы будут иметь IsInitiating=false, и поэтому Subscribe метод должен быть первым методом, вызываемым для начала нового сеанса. Вы также можете использовать специальный метод с IsTerminating=true, чтобы закрыть сеанс.

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