Aracılığıyla paylaş


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> ister öğesinin IClientChannelolsun, 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.

  • Operations özelliği, ClientOperation nesnelerinin koleksiyonunu alır, bu koleksiyona özel ileti kesici ekleyerek işlemin iletilerine özgü işlevsellik sağlayabilirsiniz.

  • ö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 eden hata iletilerinin boyutunu sınırlamasını sağlar.

  • özelliği, MessageInspectors bir istemci aracılığıyla seyahat eden tüm iletiler için özel ileti kesicileri 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 hedefinin değerini aktarım düzeyinde aracıları ve diğer senaryoları destekleyecek şekilde ayarlar.

Ayrıca, istemci sözleşmesi 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

Name Description
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

İstemciyle ilişkilendirilmiş kanalı özelleştirmek için kullanılan kanal başlatıcı nesnelerinin 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ı nesneleri eklemek için kullanılan istemci işlemi nesnelerinin koleksiyonunu alır.

ContractClientType

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

ContractName

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

ContractNamespace

bir istemciyle ilişkili sözleşmenin ad alanını alır.

InteractiveChannelInitializers

Etkileşimli 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ının bir koleksiyonunu alır.

MessageVersionNoneFaultsEnabled

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

Operations

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

OperationSelector

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

UnhandledClientOperation

Koleksiyonda karşılık gelen ClientOperationOperations 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

Name Description
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()

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

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

Geçerli Objectbasit bir kopyasını oluşturur.

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

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

(Devralındığı yer: Object)

Şunlara uygulanır