EndpointDispatcher EndpointDispatcher EndpointDispatcher EndpointDispatcher Class

Определение

Представляет объект времени выполнения, который предоставляет собой свойства, позволяющие выполнять вставку расширений времени выполнения или изменений для сообщений в приложениях служб.Represents the run-time object that exposes properties that enable the insertion of run-time extensions or modifications for messages in service applications.

public ref class EndpointDispatcher sealed
public sealed class EndpointDispatcher
type EndpointDispatcher = class
Public NotInheritable Class EndpointDispatcher
Наследование
EndpointDispatcherEndpointDispatcherEndpointDispatcherEndpointDispatcher

Примеры

В следующем примере кода показано использование EndpointDispatcher для поиска объекта System.ServiceModel.Dispatcher.DispatchRuntime для конечной точки и вставка пользовательского инспектора сообщений с помощью поведения конечной точки.The following code example shows the use of EndpointDispatcher to locate the System.ServiceModel.Dispatcher.DispatchRuntime for the endpoint and inserts a custom message inspector using an endpoint behavior.

// 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;
}

Комментарии

Классы EndpointDispatcher и System.ServiceModel.Dispatcher.DispatchRuntime предоставляют точки настройки среды выполнения для конечных точек в службе.The EndpointDispatcher and the System.ServiceModel.Dispatcher.DispatchRuntime classes expose the runtime customization points for endpoints in a service. Объект EndpointDispatcher можно использовать для определения того, какие сообщения он может обрабатывать, и некоторых данных, относящихся к конечной точке.The EndpointDispatcher can be used to control which messages it can process and some endpoint-related information. DispatchRuntime имеет много свойств, используемых для вставки пользовательских расширений в среду выполнения конечной точки.The DispatchRuntime has a large number of properties used to insert custom extensions into the endpoint-wide runtime.

Объект EndpointDispatcher отвечает за обработку сообщений от System.ServiceModel.Dispatcher.ChannelDispatcher, если адрес назначения сообщения соответствует свойству AddressFilter и действие сообщения соответствует свойству ContractFilter.The EndpointDispatcher object is responsible for processing messages from a System.ServiceModel.Dispatcher.ChannelDispatcher when the destination address of a message matches the AddressFilter property and the message action matches the ContractFilter property. Если принять сообщение могут два объекта EndpointDispatcher, то значение свойства FilterPriority определяет конечную точку с более высоким приоритетом.If two EndpointDispatcher objects can accept a message, the FilterPriority property value determines the higher priority endpoint.

Используйте объект EndpointDispatcher для настройки или расширения процесса получения сообщений от связанного объекта ChannelDispatcher, преобразования объектов сообщений в объекты, используемые в качестве параметров, и вызова операций конечной точки и обратного процесса.Use the EndpointDispatcher object to configure or extend the process of receiving messages from the associated ChannelDispatcher, converting from message objects to objects used as parameters, and invoking an endpoint operation as well as the reverse process.

Обычно EndpointDispatcher для конечной точки получается реализацией интерфейса IEndpointBehavior, но к объекту EndpointDispatcher можно получить доступ и из других интерфейсов поведений.Typically, the EndpointDispatcher for an endpoint is obtained by implementing the IEndpointBehavior interface, but you can access the EndpointDispatcher from the other behavior interfaces.

Можно использовать следующие свойства EndpointDispatcher:You can use the following EndpointDispatcher properties:

  • Свойство AddressFilter позволяет получить или задать объект MessageFilter, который используется ChannelDispatcher для определения, может ли конечная точка обработать определенное сообщение.The AddressFilter property allows you to get or set a MessageFilter object that the ChannelDispatcher uses to identify whether the endpoint can process a particular message.

  • Свойство ChannelDispatcher возвращает связанный объект ChannelDispatcher, который выполняет отправку и получение сообщений от EndpointDispatcher и может использоваться для проверки или изменения других значений и поведений, относящихся к каналу.The ChannelDispatcher property gets the associated ChannelDispatcher object, which sends and receives messages to and from the EndpointDispatcher and which can be used to inspect or modify other channel-related values and behaviors.

  • Объект ContractFilter gets the MessageFilter , который используется для определения того, предназначено ли сообщение для данного контракта.The ContractFilter gets the MessageFilter object that is used to identify whether a message is destined for this contract.

  • Свойства ContractName и ContractNamespace возвращают имя и пространство имен контракта конечной точки.The ContractName and ContractNamespace properties return the name and namespace of the endpoint contract.

  • Свойство DispatchRuntime возвращает объект DispatchRuntime, который можно использовать для изменения значений времени выполнения или вставки пользовательских расширений времени выполнения для конечной точки.The DispatchRuntime property returns the DispatchRuntime object that you can use to modify run-time values or insert custom run-time extensions for the entire endpoint.

  • Свойство EndpointAddress возвращает адрес конечной точки.The EndpointAddress property gets the address of the endpoint.

  • Свойство FilterPriority возвращает приоритет составного фильтра, который используется ChannelDispatcher для определения того, какая конечная точка должна обработать сообщение.The FilterPriority property returns the priority of the composite filter that the ChannelDispatcher uses to establish which endpoint is to handle the message.

Конструкторы

EndpointDispatcher(EndpointAddress, String, String) EndpointDispatcher(EndpointAddress, String, String) EndpointDispatcher(EndpointAddress, String, String) EndpointDispatcher(EndpointAddress, String, String)

Инициализирует новый экземпляр класса EndpointDispatcher с указанным адресом, именем контракта и пространством имен контракта.Initializes a new instance of the EndpointDispatcher class with the specified address, contract name, and contract namespace.

EndpointDispatcher(EndpointAddress, String, String, Boolean) EndpointDispatcher(EndpointAddress, String, String, Boolean) EndpointDispatcher(EndpointAddress, String, String, Boolean) EndpointDispatcher(EndpointAddress, String, String, Boolean)

Инициализирует новый экземпляр класса EndpointDispatcher с указанным адресом, именем контракта, пространством имен контракта и значением, показывающим, является ли конечная точка открытой и системной.Initializes a new instance of the EndpointDispatcher class with the specified address, contract name, contract namespace, and whether the endpoint is a public, system endpoint.

Свойства

AddressFilter AddressFilter AddressFilter AddressFilter

Возвращает или задает объект MessageFilter, который используется для определения того, предназначено ли определенное сообщение для адреса конечной точки.Gets or sets a MessageFilter object that is used to identify whether a particular message is destined for the endpoint address.

ChannelDispatcher ChannelDispatcher ChannelDispatcher ChannelDispatcher

Возвращает связанный объект ChannelDispatcher, который можно использовать для проверки или изменения других значений и поведений, относящихся к каналу.Gets the associated ChannelDispatcher object, which can be used to inspect or modify other channel-related values and behaviors.

ContractFilter ContractFilter ContractFilter ContractFilter

Возвращает или задает объект MessageFilter, который используется для определения того, предназначено ли сообщение для данного контракта.Gets or sets the MessageFilter object that is used to identify whether a message is destined for this contract.

ContractName ContractName ContractName ContractName

Возвращает имя контракта конечной точки.Gets the endpoint contract name.

ContractNamespace ContractNamespace ContractNamespace ContractNamespace

Возвращает пространство имен контракта конечной точки.Gets the namespace of the endpoint contract.

DispatchRuntime DispatchRuntime DispatchRuntime DispatchRuntime

Возвращает объект DispatchRuntime, используемый для проверки, изменения или расширения поведения времени выполнения в рамках конечной точки службы или конечной точки обратного вызова клиента.Gets the DispatchRuntime object used to inspect, modify, or extend run-time behavior across a service endpoint or a client callback endpoint.

EndpointAddress EndpointAddress EndpointAddress EndpointAddress

Возвращает адрес конечной точки.Gets the address of the endpoint.

FilterPriority FilterPriority FilterPriority FilterPriority

Возвращает или задает приоритет комбинации ContractFilter и AddressFilter, когда конечные точки выбираются объектом ChannelDispatcher.Gets or sets the priority of the ContractFilter and the AddressFilter combination when the ChannelDispatcher is selecting endpoints.

IsSystemEndpoint IsSystemEndpoint IsSystemEndpoint IsSystemEndpoint

Получает значение, которое показывает, создана ли конечная точка сервером внутренним образом (а не пользователем).Gets a value that indicates whether the endpoint is created internally by the server and not by the user.

Методы

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Inherited from Object)

Применяется к