ClientOperation Kelas

Definisi

Digunakan untuk mengubah atau memperluas perilaku eksekusi operasi kontrak tertentu dalam objek klien atau objek saluran klien. Kelas ini tidak dapat diwariskan.

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

Contoh

Contoh kode berikut menunjukkan System.ServiceModel.Description.IEndpointBehavior penyisipan pemeriksa parameter kustom ke masing-masing ClientOperation di ClientRuntime.Operations properti .

#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

Keterangan

Kelas ClientOperation adalah lokasi untuk modifikasi run-time klien dan titik penyisipan untuk ekstensi kustom yang hanya dilingkupkan ke satu operasi layanan. (Untuk mengubah perilaku run-time klien untuk semua pesan dalam kontrak, gunakan ClientRuntime kelas . )

Instal ClientOperation modifikasi menggunakan objek perilaku klien kustom, salah satu jenis IContractBehavior (untuk menemukan operasi tertentu untuk dimodifikasi) atau jenis IOperationBehavior (yang kemudian dapat diterapkan dengan membuat atribut kustom).

Operations Gunakan properti untuk menemukan ClientOperation objek yang mewakili operasi layanan tertentu.

Untuk informasi selengkapnya tentang klien dan arsitektur klien, lihat Mengakses Layanan Menggunakan Klien WCF dan Arsitektur Klien WCF. Untuk informasi selengkapnya tentang menyesuaikan runtime klien, lihat Memperluas Klien. Untuk informasi selengkapnya tentang menggunakan perilaku, lihat Mengonfigurasi dan Memperluas Runtime dengan Perilaku.

Properti berikut memungkinkan Anda menyisipkan objek kustom atau mengubah perilaku eksekusi klien:

  • Formatter Gunakan properti untuk menyisipkan implementasi kustom IClientMessageFormatter untuk operasi atau mengubah formatter saat ini.

  • ParameterInspectors Gunakan properti untuk menyisipkan implementasi kustom IParameterInspector atau untuk mengubah yang saat ini.

  • SerializeRequest Gunakan properti untuk mengontrol siapa yang membuat serial pesan keluar.

  • DeserializeReply Gunakan properti untuk mengontrol siapa yang mendeserialisasi pesan masuk.

  • Action Gunakan properti untuk mengakses tindakan WS-Addressing pesan permintaan dan ReplyAction properti untuk mengakses tindakan pesan respons.

  • BeginMethod Gunakan dan EndMethod untuk menentukan metode klien mana yang terkait dengan operasi asinkron.

  • FaultContractInfos Gunakan properti untuk mendapatkan kumpulan jenis tertentu yang dapat muncul di kesalahan SOAP sebagai jenis detail.

  • Gunakan properti IsInitiating dan IsTerminating untuk mengontrol apakah sesi masing-masing dimulai atau diruntuhkan ketika operasi dipanggil.

  • IsOneWay Gunakan properti untuk mengontrol apakah klien menunggu respons sebelum menyelesaikan pemanggilan.

  • Parent Gunakan properti untuk mendapatkan objek yang berisiClientRuntime.

  • Gunakan properti Name untuk mendapatkan nama operasi.

  • Gunakan properti SyncMethod untuk mengontrol metode mana yang dipetakan ke operasi.

Konstruktor

Nama Deskripsi
ClientOperation(ClientRuntime, String, String, String)

Menginisialisasi instans ClientOperation baru kelas menggunakan nilai tindakan , nama, tindakan, dan balasan yang ditentukan ClientRuntime.

ClientOperation(ClientRuntime, String, String)

Menginisialisasi instans ClientOperation baru kelas menggunakan nilai , nama, dan tindakan yang ditentukan ClientRuntime.

Properti

Nama Deskripsi
Action

Mendapatkan tindakan operasi.

BeginMethod

Mendapatkan atau mengatur metode yang terkait dengan operasi asinkron.

ClientParameterInspectors

Mendapatkan kumpulan objek pemeriksa parameter yang digunakan untuk melihat atau memodifikasi parameter sebelum atau berikutnya ke panggilan klien.

DeserializeReply

Mendapatkan atau menetapkan nilai yang menunjukkan apakah Formatter nilai properti digunakan untuk mendeserialisasi pesan balasan.

EndMethod

Mendapatkan atau mengatur metode yang mengimplementasikan metode akhir asinkron untuk operasi.

FaultContractInfos

Mendapatkan kumpulan FaultContractInfo objek yang mewakili kesalahan SOAP yang ditentukan untuk operasi ini.

Formatter

Mendapatkan atau mengatur pemformat yang menserialisasikan objek ke dalam pesan dan mendeserialisasi pesan ke dalam objek.

IsInitiating

Mendapatkan atau menetapkan nilai yang menunjukkan apakah sesi dapat dimulai dengan pesan ke operasi ini.

IsOneWay

Mendapatkan atau menetapkan nilai yang menunjukkan apakah operasi adalah operasi satu arah.

IsTerminating

Mendapatkan atau menetapkan nilai yang menunjukkan apakah operasi ini adalah yang terakhir dalam sesi.

Name

Mendapatkan nama operasi.

ParameterInspectors

Mendapatkan atau mengatur kumpulan IParameterInspector objek yang dapat memeriksa dan memodifikasi objek masuk dan keluar untuk metode klien tertentu.

Parent

Mendapatkan objek yang berisi ClientRuntime .

ReplyAction

Mendapatkan tindakan pesan balasan untuk operasi ini.

SerializeRequest

Mendapatkan atau menetapkan nilai yang menentukan apakah Formatter objek menserialisasikan pesan keluar.

SyncMethod

Mendapatkan atau mengatur metode yang terkait dengan operasi ini.

TaskMethod

Mendapatkan atau mengatur metode yang terkait dengan tugas.

TaskTResult

Mendapatkan atau mengatur jenis hasil metode yang terkait dengan tugas.

Metode

Nama Deskripsi
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk