Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Содержимое сообщения часто находится в формате XML, который обычно не является удобным форматом для приложения. Приложения управляют объектами, получают и задают их свойства. Windows Communication Foundation (WCF) использует контракт данных для преобразования Message объекта в объект, который легко обрабатывается приложением. Эти процессы называются сериализацией и десериализацией. Обратите внимание, что эти же термины используются для описания сериализации и десериализации, выполняемой уровнем транспорта, в формате проводных сообщений и обратно, который является несвязанным процессом.
Вы можете использовать пользовательский модуль форматирования сообщений, если необходимо реализовать специализированное преобразование между сообщениями и объектами, которые невозможно выполнить с помощью контракта данных. Это можно сделать, изменив или расширив поведение выполнения определенной операции контракта в клиенте или службе.
Настраиваемые модули форматирования сообщений на клиенте
Интерфейс IClientMessageFormatter определяет методы, используемые для управления преобразованием сообщений в объекты и объекты в сообщения для клиентских приложений.
Этот интерфейс необходимо реализовать. Сначала переопределите метод DeserializeReply, чтобы десериализовать сообщение. Этот метод вызывается после получения входящего сообщения, но перед передачей в клиентскую операцию.
Затем переопределите SerializeRequest метод для сериализации объекта. Этот метод вызывается перед отправкой исходящего сообщения.
Чтобы вставить пользовательский форматировщик в служебное приложение, назначьте объект IClientMessageFormatter свойству Formatter с помощью механизма операций. Сведения о поведении см. в разделе "Настройка и расширение среды выполнения с помощью поведения".
Форматирование сообщений на службе
Интерфейс IDispatchMessageFormatter определяет методы, которые преобразуют Message объект в параметры для операции и из параметров в Message объект в приложении-службе.
Этот интерфейс необходимо реализовать. Сначала переопределите метод DeserializeReply, чтобы десериализовать сообщение. Этот метод вызывается после получения входящего сообщения, но перед передачей в клиентскую операцию.
Затем переопределите SerializeRequest метод для сериализации объекта. Этот метод вызывается перед отправкой исходящего сообщения.
Чтобы вставить пользовательский форматировщик в служебное приложение, назначьте объект IDispatchMessageFormatter свойству Formatter с помощью механизма операций. Сведения о поведении см. в разделе "Настройка и расширение среды выполнения с помощью поведения".