ChannelDispatcherBase Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Абстрактный базовый класс для канального диспетчера, который принимает каналы и привязывает их к службам.
public ref class ChannelDispatcherBase abstract : System::ServiceModel::Channels::CommunicationObject
public abstract class ChannelDispatcherBase : System.ServiceModel.Channels.CommunicationObject
type ChannelDispatcherBase = class
inherit CommunicationObject
Public MustInherit Class ChannelDispatcherBase
Inherits CommunicationObject
- Наследование
- Производный
Комментарии
Он используется разработчиками, которые хотят сохранить модель программирования Windows Communication Foundation (WCF), но заменить предоставленную системой среду выполнения. Такие приложения будут рассылать сообщения по каналам и управлять ими с помощью диспетчеров, управляемых пользователями. Чтобы использовать объект ChannelDispatcherBase, создайте класс, производный от него, расширьте объект ServiceHost и переопределите объект InitializeRuntime, добавляя экземпляры класса, производного от объекта ChannelDispatcherBase, в коллекцию ChannelDispatchers.
Объекты IChannelListener и ServiceHost, связанные с объектом ChannelDispatcherBase, доступны для проверки или изменения при использовании объекта Listener и объекта Host, соответственно.
Объект ServiceHost вызывает методы Attach(ServiceHostBase) или Detach(ServiceHostBase) при добавлении или удалении объекта ChannelDispatcherBase из коллекции ChannelDispatchers.
ServiceHost вызывает метод CloseInput во время закрытия перед закрытием InstanceContexts. Windows Communication Foundation (WCF) использует этот вызов, чтобы закрыть каналы датаграмм и дождаться, пока все сообщения не поймут в InstanceContext.
Конструкторы
ChannelDispatcherBase() |
Инициализирует новый экземпляр класса ChannelDispatcherBase. |
Свойства
DefaultCloseTimeout |
При переопределении в производном классе возвращает интервал времени по умолчанию, выделенный для успешного завершения операции закрытия. (Унаследовано от CommunicationObject) |
DefaultOpenTimeout |
При переопределении в производном классе возвращает интервал времени по умолчанию, выделенный для успешного завершения операции открытия. (Унаследовано от CommunicationObject) |
Host |
При переопределении в производном классе получает размещение узла, связанного с диспетчером канала. |
IsDisposed |
Возвращает значение, указывающее, удален ли объект связи. (Унаследовано от CommunicationObject) |
Listener |
При переопределении в производном классе получает прослушивателя канала, связанного с диспетчером канала. |
State |
Возвращает значение, которое указывает на текущее состояние объекта связи. (Унаследовано от CommunicationObject) |
ThisLock |
Возвращает взаимно исключающую блокировку, которая защищает экземпляр класса в процессе перехода между состояниями. (Унаследовано от CommunicationObject) |
Методы
Abort() |
Вызывает мгновенный переход объекта связи из текущего состояния в состояние закрытия. (Унаследовано от CommunicationObject) |
Attach(ServiceHostBase) |
При переопределении в производном классе прикрепляет диспетчер каналов к указанному узлу размещения. |
BeginClose(AsyncCallback, Object) |
Начинает асинхронную операцию закрытия объекта связи. (Унаследовано от CommunicationObject) |
BeginClose(TimeSpan, AsyncCallback, Object) |
Начинает асинхронную операцию закрытия объекта связи с заданным временем ожидания. (Унаследовано от CommunicationObject) |
BeginOpen(AsyncCallback, Object) |
Начинает асинхронную операцию открытия объекта связи. (Унаследовано от CommunicationObject) |
BeginOpen(TimeSpan, AsyncCallback, Object) |
Начинает асинхронную операцию открытия объекта связи в течение заданного интервала времени. (Унаследовано от CommunicationObject) |
Close() |
Вызывает переход объекта связи из текущего состояния в состояние Closed. (Унаследовано от CommunicationObject) |
Close(TimeSpan) |
Вызывает переход объекта связи из его текущего состояния в состояние Closed в течение заданного интервала времени. (Унаследовано от CommunicationObject) |
CloseInput() |
При переопределении в производном классе удаляет диспетчеры конечной точки, связанные с диспетчером канала. |
Detach(ServiceHostBase) |
При переопределении в производном классе открепляет диспетчер каналов от указанного узла размещения. |
EndClose(IAsyncResult) |
Завершает асинхронную операцию закрытия объекта связи. (Унаследовано от CommunicationObject) |
EndOpen(IAsyncResult) |
Завершает асинхронную операцию открытия объекта связи. (Унаследовано от CommunicationObject) |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
Fault() |
Вызывает переход объекта связи из текущего состояния в состояние Faulted. (Унаследовано от CommunicationObject) |
GetCommunicationObjectType() |
Возвращает тип объекта связи. (Унаследовано от CommunicationObject) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnAbort() |
Вставляет операции обработки объекта связи после перехода объекта в состояние закрытия в связи с вызовом синхронной операции прерывания. (Унаследовано от CommunicationObject) |
OnBeginClose(TimeSpan, AsyncCallback, Object) |
Вставляет операции обработки объекта связи после перехода объекта в состояние закрытия в связи с вызовом асинхронной операции закрытия. (Унаследовано от CommunicationObject) |
OnBeginOpen(TimeSpan, AsyncCallback, Object) |
Вставляет операцию обработки объекта связи после перехода объекта в состояние открытия в связи с вызовом асинхронной операции открытия. (Унаследовано от CommunicationObject) |
OnClose(TimeSpan) |
Вставляет операцию обработки объекта связи после перехода объекта в состояние закрытия в связи с вызовом синхронной операции закрытия. (Унаследовано от CommunicationObject) |
OnCloseAsync(TimeSpan) |
Абстрактный базовый класс для канального диспетчера, который принимает каналы и привязывает их к службам. (Унаследовано от CommunicationObject) |
OnClosed() |
Вызывается в процессе перехода объекта связи в состояние закрытия. (Унаследовано от CommunicationObject) |
OnClosing() |
Вызывается в процессе перехода объекта связи в состояние закрытия. (Унаследовано от CommunicationObject) |
OnEndClose(IAsyncResult) |
Завершает асинхронную операцию при закрытии объекта связи. (Унаследовано от CommunicationObject) |
OnEndOpen(IAsyncResult) |
Завершает асинхронную операцию при открытии объекта связи. (Унаследовано от CommunicationObject) |
OnFaulted() |
Вставляет операцию обработки объекта связи после перехода объекта в состояние Faulted в связи с вызовом синхронной операции ошибки. (Унаследовано от CommunicationObject) |
OnOpen(TimeSpan) |
Вставляет операцию обработки объекта связи после перехода объекта в состояние открытия, которое должно быть выполнено в течение указанного интервала времени. (Унаследовано от CommunicationObject) |
OnOpenAsync(TimeSpan) |
Абстрактный базовый класс для канального диспетчера, который принимает каналы и привязывает их к службам. (Унаследовано от CommunicationObject) |
OnOpened() |
Вызывается в процессе перехода объекта связи в состояние Opened. (Унаследовано от CommunicationObject) |
OnOpening() |
Вызывается в процессе перехода объекта связи в состояние открытия. (Унаследовано от CommunicationObject) |
Open() |
Вызывает переход объекта связи из состояния Created в состояние Opened. (Унаследовано от CommunicationObject) |
Open(TimeSpan) |
Вызывает переход объекта связи из состояния Created в состояние Opened в течение заданного интервала времени. (Унаследовано от CommunicationObject) |
ThrowIfDisposed() |
Вызывает исключение, если объект связи удален. (Унаследовано от CommunicationObject) |
ThrowIfDisposedOrImmutable() |
Создает исключение, если для свойства объекта связи State не установлено значение Created. (Унаследовано от CommunicationObject) |
ThrowIfDisposedOrNotOpen() |
Создает исключение, если объект связи не находится в состоянии Opened. (Унаследовано от CommunicationObject) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
События
Closed |
Происходит при переходе объекта связи в состояние Closed. (Унаследовано от CommunicationObject) |
Closing |
Происходит при переходе объекта связи в состояние закрытия. (Унаследовано от CommunicationObject) |
Faulted |
Происходит при переходе объекта связи в состояние Faulted. (Унаследовано от CommunicationObject) |
Opened |
Происходит при переходе объекта связи в состояние Opened. (Унаследовано от CommunicationObject) |
Opening |
Происходит при переходе объекта связи в состояние открытия. (Унаследовано от CommunicationObject) |
Явные реализации интерфейса
IAsyncCommunicationObject.CloseAsync(TimeSpan) |
Абстрактный базовый класс для канального диспетчера, который принимает каналы и привязывает их к службам. (Унаследовано от CommunicationObject) |
IAsyncCommunicationObject.OpenAsync(TimeSpan) |
Абстрактный базовый класс для канального диспетчера, который принимает каналы и привязывает их к службам. (Унаследовано от CommunicationObject) |
Методы расширения
CloseHelperAsync(ICommunicationObject, TimeSpan) |
Абстрактный базовый класс для канального диспетчера, который принимает каналы и привязывает их к службам. |
OpenHelperAsync(ICommunicationObject, TimeSpan) |
Абстрактный базовый класс для канального диспетчера, который принимает каналы и привязывает их к службам. |
GetInternalCloseTimeout(CommunicationObject) |
Абстрактный базовый класс для канального диспетчера, который принимает каналы и привязывает их к службам. |