EndpointDispatcher Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет объект времени выполнения, предоставляющий свойства, позволяющие вставлять расширения времени выполнения или изменения сообщений в приложениях-службах.
public ref class EndpointDispatcher
public class EndpointDispatcher
type EndpointDispatcher = class
Public Class EndpointDispatcher
- Наследование
-
EndpointDispatcher
Примеры
В следующем примере кода показано использование EndpointDispatcher для поиска System.ServiceModel.Dispatcher.DispatchRuntime конечной точки и вставки пользовательского инспектора сообщений с помощью поведения конечной точки.
// IEndpointBehavior Members
public void AddBindingParameters(ServiceEndpoint serviceEndpoint, System.ServiceModel.Channels.BindingParameterCollection bindingParameters)
{
return;
}
public void ApplyClientBehavior(ServiceEndpoint serviceEndpoint, ClientRuntime behavior)
{
behavior.MessageInspectors.Add(new EndpointBehaviorMessageInspector());
}
public void ApplyDispatchBehavior(ServiceEndpoint serviceEndpoint, EndpointDispatcher endpointDispatcher)
{
endpointDispatcher.DispatchRuntime.MessageInspectors.Add(new EndpointBehaviorMessageInspector());
}
public void Validate(ServiceEndpoint serviceEndpoint)
{
return;
}
Комментарии
System.ServiceModel.Dispatcher.DispatchRuntime Классы EndpointDispatcher предоставляют точки настройки среды выполнения для конечных точек в службе. Его EndpointDispatcher можно использовать для управления сообщениями, которые могут обрабатываться и некоторые сведения, связанные с конечной точкой. Имеет DispatchRuntime большое количество свойств, используемых для вставки пользовательских расширений в среду выполнения на уровне конечной точки.
Объект EndpointDispatcher отвечает за обработку сообщений от System.ServiceModel.Dispatcher.ChannelDispatcher адреса назначения сообщения, соответствующего AddressFilter свойству, и действие сообщения соответствует свойству ContractFilter . Если два EndpointDispatcher объекта могут принять сообщение, FilterPriority значение свойства определяет конечную точку с более высоким приоритетом.
EndpointDispatcher Используйте объект для настройки или расширения процесса получения сообщений из связанного ChannelDispatcherобъекта, преобразования из объектов сообщений в объекты, используемые в качестве параметров, и вызова операции конечной точки, а также обратного процесса.
Как правило, EndpointDispatcher конечная точка получается путем реализации IEndpointBehavior интерфейса, но вы можете получить доступ к EndpointDispatcher другим интерфейсам поведения.
Можно использовать следующие EndpointDispatcher свойства:
Свойство AddressFilter позволяет получить или задать MessageFilter объект, который используется для определения того, ChannelDispatcher может ли конечная точка обрабатывать определенное сообщение.
Свойство ChannelDispatcher получает связанный ChannelDispatcher объект, который отправляет и получает сообщения и из EndpointDispatcher них, а также может использоваться для проверки или изменения других значений и поведения, связанных с каналом.
Возвращает ContractFilter объект, используемый MessageFilter для определения того, предназначено ли сообщение для этого контракта.
ContractNamespace Свойства ContractName возвращают имя и пространство имен контракта конечной точки.
Свойство DispatchRuntime возвращает DispatchRuntime объект, который можно использовать для изменения значений времени выполнения или вставки настраиваемых расширений времени выполнения для всей конечной точки.
Свойство EndpointAddress получает адрес конечной точки.
Свойство FilterPriority возвращает приоритет составного фильтра, который ChannelDispatcher используется для установки конечной точки для обработки сообщения.
Конструкторы
| Имя | Описание |
|---|---|
| EndpointDispatcher(EndpointAddress, String, String, Boolean) |
Инициализирует новый экземпляр EndpointDispatcher класса с указанным адресом, именем контракта, пространством имен контракта и является ли конечная точка общедоступной, системной конечной точкой. |
| EndpointDispatcher(EndpointAddress, String, String) |
Инициализирует новый экземпляр EndpointDispatcher класса с указанным адресом, именем контракта и пространством имен контракта. |
Свойства
| Имя | Описание |
|---|---|
| AddressFilter |
Возвращает или задает объект, используемый MessageFilter для определения того, предназначено ли определенное сообщение для адреса конечной точки. |
| ChannelDispatcher |
Возвращает связанный ChannelDispatcher объект, который можно использовать для проверки или изменения других значений и поведения, связанных с каналом. |
| ContractFilter |
Возвращает или задает MessageFilter объект, используемый для определения того, предназначено ли сообщение для этого контракта. |
| ContractName |
Возвращает имя контракта конечной точки. |
| ContractNamespace |
Возвращает пространство имен контракта конечной точки. |
| DispatchRuntime |
DispatchRuntime Возвращает объект, используемый для проверки, изменения или расширения поведения во время выполнения в конечной точке службы или конечной точке обратного вызова клиента. |
| EndpointAddress |
Возвращает адрес конечной точки. |
| FilterPriority |
Возвращает или задает приоритет сочетания ContractFilterAddressFilter при ChannelDispatcher выборе конечных точек. |
| IsSystemEndpoint |
Возвращает значение, указывающее, создается ли конечная точка внутренне сервером, а не пользователем. |
Методы
| Имя | Описание |
|---|---|
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |