2016-10-24 2 views
0

Я пытаюсь наблюдать отправленные сообщения с помощью SendObserver на ISendEndpoint. Когда я использую GetSendEndpoint из контекста потребления и добавляю наблюдателя с помощью ConnectSendObserver, я замечаю, что предыдущие наблюдатели, добавленные из предыдущих сообщений, все еще существуют, поэтому наблюдатель вызывается несколько раз после отправки первого сообщения. Обратите внимание, что я должен установить наблюдателя в контексте потребления.Подключить SendObserver к ISendEndpoint, полученному с помощью контекста потребления один раз

ответ

0

Вы должны использовать возвращаемый ConnectHandle, когда наблюдатель подключен для отключения наблюдателя после того, как наблюдаемые сообщения были обнаружены. В вашем случае, как только ConsumeContext больше не используется - например, в конце потребителя.

Таким образом, вы не накапливаете их с течением времени.