Udostępnij za pośrednictwem


IChannel Interfejs

Definicja

Definiuje podstawowy interfejs, który musi implementować wszystkie obiekty kanału. Wymaga to zaimplementowania interfejsu maszyny stanu współużytkowanej przez wszystkie obiekty komunikacyjne i zaimplementowania metody pobierania obiektów ze stosu kanału.

public interface class IChannel : System::ServiceModel::ICommunicationObject
public interface IChannel : System.ServiceModel.ICommunicationObject
type IChannel = interface
    interface ICommunicationObject
Public Interface IChannel
Implements ICommunicationObject
Pochodne
Implementuje

Uwagi

Ważne

Wywoływanie metod z klas implementujących ten interfejs z niezaufanymi danymi jest zagrożeniem bezpieczeństwa. Wywołaj metody z klas, które implementują ten interfejs tylko z zaufanymi danymi. Aby uzyskać więcej informacji, zobacz Validate All Inputs (Weryfikowanie wszystkich danych wejściowych).

Kanały muszą spełniać kontrakt maszyny stanu zgodnie z definicją interfejsu ICommunicationObject .

Interfejs IChannel dodaje element

GetProperty metoda interfejsu ICommunicationObject . Ta metoda zapewnia mechanizm pobierania właściwości ze stosu kanału niezależnie od tego, gdzie znajdują się te właściwości. Termin "property" w nazwie metody odnosi się do informacji, które należą do jednego z kanałów w stosie. Typ clR dla tej właściwości jest określany przez .T Ta metoda pobierania jest również używana w fabrykach kanałów i odbiornikach kanałów.

IChannel jest dziedziczony przez każdy interfejs kanału skojarzony z podstawowymi wzorcami wymiany komunikatów:

Właściwości

State

Pobiera bieżący stan obiektu zorientowanego na komunikację.

(Odziedziczone po ICommunicationObject)

Metody

Abort()

Powoduje natychmiastowe przejście obiektu komunikacyjnego z bieżącego stanu do stanu zamkniętego.

(Odziedziczone po ICommunicationObject)
BeginClose(AsyncCallback, Object)

Rozpoczyna operację asynchroniczną, aby zamknąć obiekt komunikacji.

(Odziedziczone po ICommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

Rozpoczyna operację asynchroniczną, aby zamknąć obiekt komunikacji z określonym limitem czasu.

(Odziedziczone po ICommunicationObject)
BeginOpen(AsyncCallback, Object)

Rozpoczyna operację asynchroniczną, aby otworzyć obiekt komunikacji.

(Odziedziczone po ICommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

Rozpoczyna operację asynchroniczną, aby otworzyć obiekt komunikacji w określonym przedziale czasu.

(Odziedziczone po ICommunicationObject)
Close()

Powoduje przejście obiektu komunikacyjnego z bieżącego stanu do stanu zamkniętego.

(Odziedziczone po ICommunicationObject)
Close(TimeSpan)

Powoduje przejście obiektu komunikacyjnego z bieżącego stanu do stanu zamkniętego.

(Odziedziczone po ICommunicationObject)
EndClose(IAsyncResult)

Kończy operację asynchroniczną, aby zamknąć obiekt komunikacji.

(Odziedziczone po ICommunicationObject)
EndOpen(IAsyncResult)

Wykonuje operację asynchroniczną, aby otworzyć obiekt komunikacji.

(Odziedziczone po ICommunicationObject)
GetProperty<T>()

Zwraca żądany obiekt wpisany, jeśli istnieje, z odpowiedniej warstwy w stosie kanału.

Open()

Powoduje przejście obiektu komunikacji z utworzonego stanu do stanu otwartego.

(Odziedziczone po ICommunicationObject)
Open(TimeSpan)

Powoduje przejście obiektu komunikacyjnego z utworzonego stanu do otwartego stanu w określonym przedziale czasu.

(Odziedziczone po ICommunicationObject)

Zdarzenia

Closed

Występuje, gdy obiekt komunikacji kończy przejście ze stanu zamknięcia do stanu zamkniętego.

(Odziedziczone po ICommunicationObject)
Closing

Występuje, gdy obiekt komunikacji najpierw przechodzi w stan zamknięcia.

(Odziedziczone po ICommunicationObject)
Faulted

Występuje, gdy obiekt komunikacji najpierw przechodzi w stan błędu.

(Odziedziczone po ICommunicationObject)
Opened

Występuje, gdy obiekt komunikacji kończy przejście ze stanu otwarcia do stanu otwarcia.

(Odziedziczone po ICommunicationObject)
Opening

Występuje, gdy obiekt komunikacji najpierw przechodzi w stan otwarcia.

(Odziedziczone po ICommunicationObject)

Dotyczy