Инспекторы сообщений WCF - PullRequest
1 голос
/ 04 августа 2009

Я разрабатываю службу WCF, где мне нужно перехватывать входящие сообщения для пользовательских проверок. После моих исследований я обнаружил, что для этой цели мне нужно реализовать IDispatchMessageInspector. Итак, я вставил свои пользовательские проверки в метод AfterReceiveRequest интерфейса.

Проблема: Когда я отладил код, я увидел, что прием сообщения не вызывает метод AfterReceiveRequest, который я реализовал.

Вопрос: Нужно ли где-то регистрировать свой класс / метод для запуска при получении сообщений?

1 Ответ

2 голосов
/ 04 августа 2009

Вы реализовали IDispatchMessageInspector - но добавили ли вы его в коллекцию .Behaviors ServiceHost на стороне сервера, чтобы он был включен?

Подробности смотрите в этом блоге - сначала вам нужно создать класс, реализующий IEndpointBehavior (или IServiceBehavior - в зависимости от того, что вам нужно) и реализовать метод ApplyDispatchBehavior.

Затем вам нужно либо добавить это поведение в ServiceHost перед его открытием, либо создать другой класс, который позволит вам настроить это поведение для вашей службы.

Марк

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