ClientOperation Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Wird verwendet, um das Ausführungsverhalten eines bestimmten Vertragsvorgangs in einem Clientobjekt oder Clientkanalobjekt zu ändern oder zu erweitern. Diese Klasse kann nicht vererbt werden.
public ref class ClientOperation sealed
public ref class ClientOperation sealed : System::ServiceModel::Dispatcher::ClientOperationCompatBase
public sealed class ClientOperation
public sealed class ClientOperation : System.ServiceModel.Dispatcher.ClientOperationCompatBase
type ClientOperation = class
type ClientOperation = class
inherit ClientOperationCompatBase
Public NotInheritable Class ClientOperation
Public NotInheritable Class ClientOperation
Inherits ClientOperationCompatBase
- Vererbung
-
ClientOperation
- Vererbung
Beispiele
Das folgende Codebeispiel zeigt ein Einfügen eines System.ServiceModel.Description.IEndpointBehavior benutzerdefinierten Parameterinspektors in die einzelnen ClientOperation Eigenschaften ClientRuntime.Operations .
#region IEndpointBehavior Members
public void AddBindingParameters(
ServiceEndpoint endpoint, BindingParameterCollection bindingParameters
) { return; }
public void ApplyClientBehavior(ServiceEndpoint endpoint, ClientRuntime clientRuntime)
{
clientRuntime.MessageInspectors.Add(new Inspector());
foreach (ClientOperation op in clientRuntime.Operations)
op.ParameterInspectors.Add(new Inspector());
}
public void ApplyDispatchBehavior(ServiceEndpoint endpoint, EndpointDispatcher endpointDispatcher)
{
endpointDispatcher.DispatchRuntime.MessageInspectors.Add(new Inspector());
foreach (DispatchOperation op in endpointDispatcher.DispatchRuntime.Operations)
op.ParameterInspectors.Add(new Inspector());
}
public void Validate(ServiceEndpoint endpoint){ return; }
#Region "IEndpointBehavior Members"
Public Sub AddBindingParameters(ByVal endpoint As ServiceEndpoint, ByVal bindingParameters _
As BindingParameterCollection) Implements IEndpointBehavior.AddBindingParameters
Return
End Sub
Public Sub ApplyClientBehavior(ByVal endpoint As ServiceEndpoint, ByVal clientRuntime As ClientRuntime) _
Implements IEndpointBehavior.ApplyClientBehavior
clientRuntime.MessageInspectors.Add(New Inspector())
For Each op As ClientOperation In clientRuntime.Operations
op.ParameterInspectors.Add(New Inspector())
Next op
End Sub
Public Sub ApplyDispatchBehavior(ByVal endpoint As ServiceEndpoint, ByVal endpointDispatcher As _
EndpointDispatcher) Implements IEndpointBehavior.ApplyDispatchBehavior
endpointDispatcher.DispatchRuntime.MessageInspectors.Add(New Inspector())
For Each op As DispatchOperation In endpointDispatcher.DispatchRuntime.Operations
op.ParameterInspectors.Add(New Inspector())
Next op
End Sub
Public Sub Validate(ByVal endpoint As ServiceEndpoint) Implements IEndpointBehavior.Validate
Return
End Sub
Hinweise
Die ClientOperation Klasse ist der Speicherort für Clientlaufzeitänderungen und Einfügemarke für benutzerdefinierte Erweiterungen, die nur auf einen Dienstvorgang ausgerichtet sind. (Verwenden Sie die ClientRuntime Klasse, um das Laufzeitverhalten des Clients für alle Nachrichten in einem Vertrag zu ändern. )
Installieren Sie ClientOperation Änderungen mithilfe eines benutzerdefinierten Clientverhaltensobjekts, entweder vom Typ IContractBehavior (um einen bestimmten zu ändernden Vorgang zu finden) oder vom Typ IOperationBehavior (der dann durch Erstellen eines benutzerdefinierten Attributs angewendet werden kann).
Verwenden Sie die Operations Eigenschaft, um das ClientOperation Objekt zu suchen, das einen bestimmten Dienstvorgang darstellt.
Weitere Informationen zu Clients und der Clientarchitektur finden Sie unter Zugreifen auf Dienste mithilfe eines WCF-Clients und einer WCF-Clientarchitektur. Weitere Informationen zum Anpassen der Clientlaufzeit finden Sie unter Erweitern von Clients. Weitere Informationen zur Verwendung von Verhaltensweisen finden Sie unter Konfigurieren und Erweitern der Laufzeit mit Verhalten.
Mit den folgenden Eigenschaften können Sie benutzerdefinierte Objekte einfügen oder das Clientausführungsverhalten ändern:
Verwenden Sie die Formatter Eigenschaft, um eine benutzerdefinierte IClientMessageFormatter Implementierung für einen Vorgang einzufügen oder den aktuellen Formatierer zu ändern.
Verwenden Sie die ParameterInspectors Eigenschaft, um eine benutzerdefinierte IParameterInspector Implementierung einzufügen oder die aktuelle Implementierung zu ändern.
Verwenden Sie die SerializeRequest Eigenschaft, um zu steuern, wer eine ausgehende Nachricht serialisiert.
Verwenden Sie die DeserializeReply Eigenschaft, um zu steuern, wer eine eingehende Nachricht deserialisiert.
Verwenden Sie die Action Eigenschaft, um auf die WS-Addressing Aktion der Anforderungsnachricht und die ReplyAction Eigenschaft zuzugreifen, um auf die Antwortnachrichtaktion zuzugreifen.
Verwenden Sie die BeginMethod und EndMethod geben Sie an, welche Clientmethoden einem asynchronen Vorgang zugeordnet sind.
Verwenden Sie die FaultContractInfos Eigenschaft, um eine Auflistung von angegebenen Typen abzurufen, die in SOAP-Fehlern als Detailtyp angezeigt werden können.
Verwenden Sie die Eigenschaften IsInitiating und IsTerminating, um zu steuern, ob eine Sitzung initiiert oder beendet wird, wenn der Vorgang aufgerufen wird.
Verwenden Sie die IsOneWay Eigenschaft, um zu steuern, ob der Client vor Abschluss des Aufrufs auf eine Antwort wartet.
Verwenden Sie die Parent Eigenschaft, um das enthaltende ClientRuntime Objekt abzurufen.
Verwenden Sie die Name Eigenschaft, um den Namen des Vorgangs abzurufen.
Verwenden Sie die SyncMethod Eigenschaft, um zu steuern, welche Methode dem Vorgang zugeordnet ist.
Konstruktoren
| Name | Beschreibung |
|---|---|
| ClientOperation(ClientRuntime, String, String, String) |
Initialisiert eine neue Instanz der ClientOperation Klasse mithilfe der angegebenen ClientRuntimeWerte , Name, Aktion und Antwortaktion. |
| ClientOperation(ClientRuntime, String, String) |
Initialisiert eine neue Instanz der ClientOperation Klasse mithilfe der angegebenen ClientRuntimeWerte, des Namens und der Aktionswerte. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Action |
Ruft die Aktion des Vorgangs ab. |
| BeginMethod |
Dient zum Abrufen oder Festlegen der Methode, die einem asynchronen Vorgang zugeordnet ist. |
| ClientParameterInspectors |
Ruft eine Auflistung von Parameterinspektorobjekten ab, die zum Anzeigen oder Ändern von Parametern vor oder nach einem Clientaufruf verwendet werden. |
| DeserializeReply |
Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob der Formatter Eigenschaftswert zum Deserialisieren der Antwortnachricht verwendet wird. |
| EndMethod |
Dient zum Abrufen oder Festlegen der Methode, die die asynchrone Endmethode für den Vorgang implementiert. |
| FaultContractInfos |
Ruft eine Auflistung von FaultContractInfo Objekten ab, die die angegebenen SOAP-Fehler für diesen Vorgang darstellen. |
| Formatter |
Ruft den Formatierer ab, der Objekte in Nachrichten serialisiert, und deserialisiert Nachrichten in Objekte. |
| IsInitiating |
Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob eine Sitzung von einer Nachricht an diesen Vorgang gestartet werden kann. |
| IsOneWay |
Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob der Vorgang ein unidirektionales Vorgang ist. |
| IsTerminating |
Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob dieser Vorgang der letzte in einer Sitzung ist. |
| Name |
Ruft den Namen des Vorgangs ab. |
| ParameterInspectors |
Dient zum Abrufen oder Festlegen einer Auflistung von IParameterInspector Objekten, die eingehende und ausgehende Objekte für eine bestimmte Clientmethode überprüfen und ändern können. |
| Parent |
Ruft das enthaltende ClientRuntime Objekt ab. |
| ReplyAction |
Ruft die Aktion der Antwortnachricht für diesen Vorgang ab. |
| SerializeRequest |
Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob das Formatter Objekt eine ausgehende Nachricht serialisiert. |
| SyncMethod |
Dient zum Abrufen oder Festlegen der Methode, die diesem Vorgang zugeordnet ist. |
| TaskMethod |
Dient zum Abrufen oder Festlegen der Methode, die einem Vorgang zugeordnet ist. |
| TaskTResult |
Dient zum Abrufen oder Festlegen des Typs des Ergebnisses der Methode, die einem Vorgang zugeordnet ist. |
Methoden
| Name | Beschreibung |
|---|---|
| Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |