ClientOperation Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Používá se k úpravě nebo rozšíření chování provádění konkrétní operace kontraktu v objektu klienta nebo objektu kanálu klienta. Tuto třídu nelze dědit.
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
- Dědičnost
-
ClientOperation
- Dědičnost
Příklady
Následující příklad kódu ukazuje System.ServiceModel.Description.IEndpointBehavior vložení vlastního inspektoru parametru do každého ClientOperation ve ClientRuntime.Operations vlastnosti .
#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
Poznámky
Třída ClientOperation je umístění pro úpravy klientského prostředí za běhu a bod vložení pro vlastní rozšíření, která jsou vymezena pouze na jednu operaci služby. (Pokud chcete změnit chování klienta za běhu pro všechny zprávy v kontraktu ClientRuntime , použijte třídu . )
Nainstalujte ClientOperation úpravy pomocí objektu vlastního chování klienta, buď typu IContractBehavior (k vyhledání konkrétní operace, kterou chcete upravit), nebo typu IOperationBehavior (který lze použít vytvořením vlastního atributu).
Operations Pomocí vlastnosti vyhledejte ClientOperation objekt, který představuje konkrétní operaci služby.
Další informace o klientech a architektuře klienta najdete v tématu Přístup ke službám pomocí klienta WCF a architektury klienta WCF. Další informace o přizpůsobení modulu runtime klienta najdete v tématu Rozšíření klientů. Další informace o používání chování najdete v tématu Konfigurace a rozšíření modulu runtime pomocí chování.
Následující vlastnosti umožňují vložit vlastní objekty nebo upravit chování provádění klienta:
Formatter Pomocí vlastnosti můžete vložit vlastní IClientMessageFormatter implementaci pro operaci nebo upravit aktuální formátovací nástroj.
ParameterInspectors Pomocí vlastnosti můžete vložit vlastní IParameterInspector implementaci nebo upravit aktuální implementaci.
SerializeRequest Pomocí vlastnosti můžete řídit, kdo serializuje odchozí zprávu.
DeserializeReply Pomocí vlastnosti můžete řídit, kdo deserializuje příchozí zprávu.
Action Vlastnost použijte pro přístup k akci WS-Addressing zprávy požadavku a ReplyAction k vlastnosti pro přístup k akci zprávy s odpovědí.
BeginMethod Pomocí a EndMethod určete, které klientské metody jsou přidruženy k asynchronní operaci.
FaultContractInfos Pomocí vlastnosti získáte kolekci zadaných typů, které se můžou zobrazit v chybách SOAP jako typ podrobností.
IsInitiating Pomocí vlastností a IsTerminating můžete určit, jestli se při zavolání operace spustí relace nebo jestli se relace vytrhá.
IsOneWay Pomocí vlastnosti můžete určit, jestli klient čeká na odpověď před dokončením volání.
Parent Pomocí vlastnosti získejte obsahující ClientRuntime objekt.
Name Pomocí vlastnosti získejte název operace.
SyncMethod Pomocí vlastnosti můžete řídit, která metoda se mapuje na operaci.
Konstruktory
ClientOperation(ClientRuntime, String, String) |
Inicializuje novou instanci ClientOperation třídy pomocí zadaných ClientRuntimehodnot , název a akce. |
ClientOperation(ClientRuntime, String, String, String) |
Inicializuje novou instanci ClientOperation třídy pomocí zadaných ClientRuntimehodnot , název, akce a akce odpovědi. |
Vlastnosti
Action |
Získá akci operace. |
BeginMethod |
Získá nebo nastaví metodu přidruženou k asynchronní operaci. |
ClientParameterInspectors |
Získá kolekci inspektoru parametrů objekty používané k zobrazení nebo úpravě parametrů před nebo po volání klienta. |
DeserializeReply |
Získá nebo nastaví hodnotu, která označuje, zda Formatter hodnota vlastnosti je použita k deserializaci zprávy odpovědi. |
EndMethod |
Získá nebo nastaví metodu, která implementuje asynchronní koncovou metodu pro operaci. |
FaultContractInfos |
Získá kolekci FaultContractInfo objektů, které představují zadané chyby SOAP pro tuto operaci. |
Formatter |
Získá nebo nastaví formátovací modul, který serializuje objekty do zpráv a deserializuje zprávy do objektů. |
IsInitiating |
Získá nebo nastaví hodnotu, která označuje, zda relace může být spuštěna zprávou pro tuto operaci. |
IsOneWay |
Získá nebo nastaví hodnotu, která označuje, zda operace je jednosměrná operace. |
IsTerminating |
Získá nebo nastaví hodnotu, která označuje, zda je tato operace poslední v relaci. |
Name |
Získá název operace. |
ParameterInspectors |
Získá nebo nastaví kolekci IParameterInspector objektů, které mohou kontrolovat a upravovat příchozí a odchozí objekty pro konkrétní metodu klienta. |
Parent |
Získá obsahující ClientRuntime objekt. |
ReplyAction |
Získá akci zprávy odpovědi pro tuto operaci. |
SerializeRequest |
Získá nebo nastaví hodnotu, která určuje, zda Formatter objekt serializuje odchozí zprávu. |
SyncMethod |
Získá nebo nastaví metodu, která je přidružena k této operaci. |
TaskMethod |
Získá nebo nastaví metodu přidruženou k úkolu. |
TaskTResult |
Získá nebo nastaví typ výsledku metody, která je přidružena k úkolu. |
Metody
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetType() |
Type Získá z aktuální instance. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |