WCF ответ на событие - PullRequest
0 голосов

Можете ли вы помочь мне в следующей задаче. Существует служба WCF с методом и списком, куда отправляются параметры метода. Каждый элемент списка имеет событие. Нужно отправить ответ от WCF, когда событие элемента списка возрастает. Пример ниже.

//We have this service 

    public SomeObject BeginSampleMethod(string param1, string param2)
            {
                 CommandController(param1, param2);
                 QueueManager.List[param1].EventRising+=(a,e)=>
                 {
                      //how to do this?
                      return new SomeObject(a,e);
                 }

            }

1 Ответ

0 голосов
/ 14 мая 2018

WCF работает от запроса -> дизайн ответа. То, что вы пытаетесь сделать, не будет работать, если вы не держите поток ... и ждете бесконечно. В большинстве случаев это приведет к тайм-ауту операции и сгенерирует исключение при вызове вашего клиента. При желании вы можете определить дуплексный контракт в вашей службе и сохранить экземпляр контекста операции для выполнения обратного вызова при возникновении события. Это будет работать только в том случае, если вы сохраняете экземпляр клиента и не перезапускаете свой прокси-клиент.

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