Расширение ServiceHost и уровень модели службы

Уровень модели службы отвечает за удаление входящих сообщений из базовых каналов, их перевод в вызовы метода в коде приложения и отправку результатов обратно вызывающему коду. Расширения модели службы изменяют или реализуют поведение и возможности выполнения или взаимодействия, в том числе возможности клиента или диспетчера, пользовательские поведения, перехват сообщений и параметров, а также другие возможности расширяемости.

В этом разделе

Расширение клиентов
Описываются интерфейсы, которые могут перехватывать и изменять среду выполнения клиента, а также классы, в которые можно вставить специальные расширения в клиентских приложениях. Например, можно выполнять специальную регистрацию сообщений, специальную сериализацию сообщений и т. п.

Расширение диспетчеров
Описываются интерфейсы, которые могут перехватывать и изменять среду выполнения службы, а также классы, в которые можно вставить пользовательские расширения в приложениях служб. Например, можно выполнять специальную регистрацию службы, проверку сообщений со стороны службы, специальную диспетчеризацию и т. п.

Расширяемые объекты
Описывается пять расширяемых объектов и шаблон IExtensibleObject<T>. Шаблон расширяемого объекта используется для расширения существующих классов среды выполнения при помощи новых функций или добавления нового состояния к объекту. Расширения, привязанные к одному из расширяемых объектов, позволяют использовать поведения на различных этапах обработки для получения доступа к общему состоянию и функциональности, привязанным к общему расширяемому объекту, к которому они могут получить доступ.

Настройка и расширение среды выполнения с помощью поведений
Чтобы изменить параметры расширений в среде выполнения WCF или вставить их, используйте поведение. WCF включает реализованные системой поведения для контроля регулирования количества запросов, использования экземпляров и многих других аспектов, относящихся к службам и операциям. В данном разделе описывается, как создавать собственные пользовательские поведения и как обеспечить их доступность как программными средствами, так и при помощи файлов конфигурации.

Расширение размещения с использованием ServiceHostFactory
Описывается, как расширить System.ServiceModel.ServiceHostBase, System.ServiceModel.ServiceHost и использовать классы System.ServiceModel.Activation.ServiceHostFactory с целью настройки среды узла.

Справочные материалы