ClientRuntime Sınıf

Tanım

bir istemci uygulaması tarafından işlenen tüm iletiler için Windows Communication Foundation (WCF) istemci nesnelerinin işlevselliğini genişleten sınıflar için ekleme noktasını temsil eder.

public ref class ClientRuntime sealed
public ref class ClientRuntime sealed : System::ServiceModel::Dispatcher::ClientRuntimeCompatBase
public sealed class ClientRuntime
public sealed class ClientRuntime : System.ServiceModel.Dispatcher.ClientRuntimeCompatBase
type ClientRuntime = class
type ClientRuntime = class
    inherit ClientRuntimeCompatBase
Public NotInheritable Class ClientRuntime
Public NotInheritable Class ClientRuntime
Inherits ClientRuntimeCompatBase
Devralma
ClientRuntime
Devralma

Örnekler

Aşağıdaki kod örneğinde, System.ServiceModel.Description.IEndpointBehavior özelliğine ekleyerek istemci çalışma zamanına MessageInspectors bir System.ServiceModel.Dispatcher.IClientMessageInspector ekler.

#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şağıdaki kod örneği, uç nokta davranışını istemci uç noktasına yükleyen bir yapılandırma dosyasını gösterir.

  <client>
      <endpoint 
        address="http://localhost:8080/SampleService" 
        behaviorConfiguration="clientInspectorsAdded" 
        binding="wsHttpBinding"
        bindingConfiguration="WSHttpBinding_ISampleService" 
        contract="ISampleService"
        name="WSHttpBinding_ISampleService"
      >
      </endpoint>
  </client>
<behaviors>
  <endpointBehaviors>
    <behavior name="clientInspectorsAdded">
      <clientInterceptors />
    </behavior>
  </endpointBehaviors>
</behaviors>
<extensions>
  <behaviorExtensions>
    <add 
      name="clientInterceptors" 
      type="Microsoft.WCF.Documentation.InspectorInserter, HostApplication, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null"
  />
  </behaviorExtensions>
</extensions>

Açıklamalar

wcf istemci nesneleri, ister uzantısı ClientBase<TChannel> IClientChannelister , Windows Communication Foundation (WCF) istemci uygulamaları tarafından yöntem çağrılarını giden iletilere dönüştürmek ve gelen iletileri nesnelere dönüştürmek ve bunları istemci yöntemlerinin sonuçlarına geçirmek için kullanılır.

ClientRuntime sınıfı, iletileri kesen ve istemci davranışını tüm işlemler arasında genişleten uzantı nesneleri ekleyebileceğiniz bir genişletilebilirlik noktasıdır. Kesme nesneleri belirli bir sözleşmedeki tüm iletileri işleyebilir, yalnızca belirli işlemler için iletileri işleyebilir, özel kanal başlatma gerçekleştirebilir ve diğer özel istemci uygulaması davranışını uygulayabilir. İstemci mimarisine genel bakış için bkz . WCF İstemci Mimarisi. İstemci programlama hakkında daha fazla bilgi için bkz. WCF İstemcisi Kullanarak Hizmetlere Erişme. Özelleştirmeler ve bunların nasıl gerçekleştirilmesiyle ilgili ayrıntılar için bkz. İstemcileri Genişletme.

  • özelliği, CallbackDispatchRuntime hizmet tarafından başlatılan geri çağırma işlemleri için dağıtım çalışma zamanı nesnesini döndürür.

  • özelliği, OperationSelector istemci iletilerinin yönlendirmesini denetlemek için özel bir işlem seçici nesnesi kabul eder.

  • özelliği, ChannelInitializers istemci kanalını denetleyebilen veya değiştirebilen bir kanal başlatıcısının eklenmesini sağlar.

  • özelliği, InteractiveChannelInitializers kullanıcının kanalı açmadan önce kimlik bilgilerini seçmesini sağlamak üzere görsel bir istem görüntülemek için kullanılabilir.

  • özelliği, Operations bu işlemin iletilerine özgü işlevler sağlayan özel ileti kesme nesneleri ekleyebileceğiniz bir nesne koleksiyonu ClientOperation alır.

  • özelliği, ManualAddressing bir uygulamanın adreslemeye doğrudan denetim sağlamak için bazı otomatik adresleme üst bilgilerini kapatmasını sağlar.

  • özelliği, MaxFaultSize istemcinin kabul edilen hata iletilerinin boyutunu sınırlamasını sağlar.

  • özelliği, MessageInspectors bir istemci üzerinden seyahat eden tüm iletiler için özel ileti kesiciler ekleyebileceğiniz bir nesne koleksiyonu IClientMessageInspector alır.

  • özelliği, UnhandledClientOperation beklenmeyen iletilerin geçirildiği işlemi döndürür.

  • ValidateMustUnderstand özelliği, aslında olarak işaretlenmiş MustUnderstand SOAP üst bilgilerinin anlaşıldığını onaylaması gerekip gerekmediğini sisteme bildirir.

  • özelliği, Via iletinin hedef değerini aktarım düzeyinde aracıları ve diğer senaryoları destekleyecek şekilde ayarlar.

Ayrıca, istemci sözleşme bilgilerini alan bir dizi başka özellik de vardır:

İstemci çift yönlü bir istemciyse, aşağıdaki özellikler istemci geri çağırma türünü ve çalışma zamanını da alır:

Özellikler

CallbackClientType

Çift yönlü istemciyle ilişkili geri çağırma sözleşmesinin türünü alır veya ayarlar.

CallbackDispatchRuntime

Hizmet tarafından başlatılan işlemlerin gönderildiği dağıtım çalışma zamanını alır.

ChannelInitializers

bir istemciyle ilişkili kanalı özelleştirmek için kullanılan kanal başlatıcı nesnelerinin bir koleksiyonunu alır.

ClientMessageInspectors

Belirli bir hizmet işleminin iletilerini görüntülemek veya değiştirmek için kullanılan ileti denetçisi nesnelerinin bir koleksiyonunu alır.

ClientOperations

Belirli bir hizmet işleminin iletilerini ve davranışını inceleyen veya değiştiren uzantı nesnelerini eklemek için kullanılan istemci işlemi nesnelerinin bir koleksiyonunu alır.

ContractClientType

İstemciyle ilişkilendirilmiş sözleşmenin türünü alır veya ayarlar.

ContractName

İstemciyle ilişkili sözleşmenin adını alır.

ContractNamespace

İstemciyle ilişkili sözleşmenin ad alanını alır.

InteractiveChannelInitializers

Etkileşimli bir kanal başlatıcı koleksiyonunu alır.

ManualAddressing

İstemcinin istek-yanıt iletilerine adresleme üst bilgileri ekleyip eklemediğini belirten bir değer alır veya ayarlar.

MaxFaultSize

Maksimum hata boyutunu alır veya ayarlar.

MessageInspectors

İstemci için ileti denetçisi uygulamalarından oluşan bir koleksiyon alır.

MessageVersionNoneFaultsEnabled

MessageVersionNoneFaultsEnabled özelliğinin ayarlanıp ayarlanmadığını belirten bir değer alır veya ayarlar.

Operations

bir istemci için istemci işlemleri koleksiyonunu alır.

OperationSelector

seçmek ClientOperationiçin kullanılabilecek bir IClientOperationSelector uygulamayı alır veya ayarlar.

UnhandledClientOperation

Koleksiyonda karşılık gelen ClientOperation Operations olmayan yöntemler için istemci işlemini alır.

ValidateMustUnderstand

Sistemin veya uygulamanın SOAP MustUnderstand üst bilgi işlemesini zorunlu kılıp zorlamadığını belirten bir değer alır veya ayarlar.

Via

İstemci aracılığıyla ileti göndermek için kullanılan aktarım adresini 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