Aracılığıyla paylaş


ClientOperation Sınıf

Tanım

İstemci nesnesinde veya istemci kanalı nesnesinde belirli bir sözleşme işleminin yürütme davranışını değiştirmek veya genişletmek için kullanılır. Bu sınıf devralınamaz.

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
Devralma
ClientOperation
Devralma

Örnekler

Aşağıdaki kod örneği, özelliğindeki her ClientOperation birine özel parametre denetçisi ekleme işlemini ClientRuntime.Operations gösterirSystem.ServiceModel.Description.IEndpointBehavior.

#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

Açıklamalar

ClientOperation sınıfı, yalnızca bir hizmet işlemi kapsamındaki özel uzantılar için istemci çalışma zamanı değişikliklerinin ve ekleme noktasının konumudur. (Sözleşmedeki tüm iletiler için istemci çalışma zamanı davranışını değiştirmek için sınıfını ClientRuntime kullanın. )

Özel istemci davranışı nesnesini kullanarak değişiklikleri yükleyin ClientOperation ( IContractBehavior değiştirilecek belirli bir işlemi bulmak için) veya türünde IOperationBehavior (daha sonra özel bir öznitelik oluşturularak uygulanabilir).

Operations Belirli bir hizmet işlemini temsil eden nesneyi bulmak ClientOperation için özelliğini kullanın.

İstemciler ve istemci mimarisi hakkında daha fazla bilgi için bkz. WCF İstemcisi Ve WCF İstemci Mimarisi Kullanarak Hizmetlere Erişme. İstemci çalışma zamanını özelleştirme hakkında daha fazla bilgi için bkz. İstemcileri Genişletme. Davranışları kullanma hakkında daha fazla bilgi için bkz. Çalışma Zamanını Davranışlarla Yapılandırma ve Genişletme.

Aşağıdaki özellikler özel nesneler eklemenizi veya istemci yürütme davranışını değiştirmenizi sağlar:

  • Formatter bir işlem için özel IClientMessageFormatter uygulama eklemek veya geçerli biçimlendiriciyi değiştirmek için özelliğini kullanın.

  • ParameterInspectors Özel IParameterInspector bir uygulama eklemek veya geçerli uygulamayı değiştirmek için özelliğini kullanın.

  • SerializeRequest Giden iletiyi kimlerin seri hale getirebileceklerini denetlemek için özelliğini kullanın.

  • DeserializeReply Gelen iletiyi kimin seri durumdan çıkaracaklarını denetlemek için özelliğini kullanın.

  • İstek iletisinin Action WS-Addressing eylemine erişmek için özelliğini ve ReplyAction yanıt iletisi eylemine erişmek için özelliğini kullanın.

  • BeginMethod zaman uyumsuz bir işlemle hangi istemci yöntemlerinin ilişkilendirileceğini belirtmek için ve EndMethod kullanın.

  • FaultContractInfos Ayrıntı türü olarak SOAP hatalarında görüntülenebilen belirtilen türlerden oluşan bir koleksiyon almak için özelliğini kullanın.

  • İşlem çağrıldığında sırasıyla oturumun IsInitiating başlatılıp başlatılmadığını veya yıkılıp yıkılmayacağını denetlemek için ve IsTerminating özelliklerini kullanın.

  • İstemcinin IsOneWay çağrıyı tamamlamadan önce yanıt bekleyip beklemediğini denetlemek için özelliğini kullanın.

  • Parent içeren ClientRuntime nesneyi almak için özelliğini kullanın.

  • İşlemin Name adını almak için özelliğini kullanın.

  • hangi yöntemin SyncMethod işlemle eşlenmiş olduğunu denetlemek için özelliğini kullanın.

Oluşturucular

ClientOperation(ClientRuntime, String, String)

Belirtilen ClientRuntime, ad ve eylem değerlerini kullanarak sınıfın yeni bir örneğini ClientOperation başlatır.

ClientOperation(ClientRuntime, String, String, String)

Belirtilen ClientRuntime, ad, eylem ve yanıt eylemi değerlerini kullanarak sınıfın ClientOperation yeni bir örneğini başlatır.

Özellikler

Action

İşlemin eylemini alır.

BeginMethod

Zaman uyumsuz bir işlemle ilişkili yöntemi alır veya ayarlar.

ClientParameterInspectors

İstemci çağrısından önce veya sonrasında parametreleri görüntülemek veya değiştirmek için kullanılan parametre denetçisi nesnelerinin bir koleksiyonunu alır.

DeserializeReply

Yanıt iletisinin seri durumdan çıkarılması için özellik değerinin Formatter kullanılıp kullanılmadığını belirten bir değer alır veya ayarlar.

EndMethod

İşlem için zaman uyumsuz end yöntemini uygulayan yöntemi alır veya ayarlar.

FaultContractInfos

Bu işlem için belirtilen SOAP hatalarını temsil eden nesne koleksiyonunu FaultContractInfo alır.

Formatter

Nesneleri iletiler halinde seri hale getiren ve iletileri nesneler halinde seri durumdan çıkaran biçimlendiriciyi alır veya ayarlar.

IsInitiating

Oturumun bu işleme iletiyle başlatılıp başlatılmayacağını belirten bir değer alır veya ayarlar.

IsOneWay

İşlemin tek yönlü bir işlem olup olmadığını belirten bir değer alır veya ayarlar.

IsTerminating

Bu işlemin bir oturumdaki son işlem olup olmadığını belirten bir değeri alır veya ayarlar.

Name

İşlemin adını alır.

ParameterInspectors

Belirli bir istemci yöntemi için gelen ve giden nesneleri denetleyebilen ve değiştirebilen bir nesne koleksiyonunu IParameterInspector alır veya ayarlar.

Parent

İçeren ClientRuntime nesneyi alır.

ReplyAction

Bu işlem için yanıt iletisinin eylemini alır.

SerializeRequest

Nesnenin Formatter giden iletiyi seri hale getirip getirmediğini belirten bir değer alır veya ayarlar.

SyncMethod

Bu işlemle ilişkili yöntemi alır veya ayarlar.

TaskMethod

Bir görevle ilişkili yöntemi alır veya ayarlar.

TaskTResult

Bir görevle ilişkili yöntemin sonucunun türünü alır veya ayarlar.

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır