Sdílet prostřednictvím


ClientOperation Třída

Definice

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)

Platí pro