Aracılığıyla paylaş


DispatchRuntime Sınıf

Tanım

Varsayılan hizmet davranışını değiştirmek ve gelen iletilerin nesnelere dönüştürülme ve işlemlere gönderilmesini değiştirebilen özel nesneler eklemek için kullanılabilecek özellikleri kullanıma sunar. Bu sınıf devralınamaz.

public ref class DispatchRuntime sealed
public sealed class DispatchRuntime
type DispatchRuntime = class
Public NotInheritable Class DispatchRuntime
Devralma
DispatchRuntime

Açıklamalar

DispatchRuntime Bir hizmetin veya tek bir uç noktanın varsayılan davranışını değiştirmek ya da aşağıdaki hizmet işlemlerinden birine veya her ikisine özel değişiklikler uygulayan nesneler eklemek için sınıfını kullanın:

  1. Gelen iletilerin nesnelere dönüştürülmesi ve bu nesnelerin bir hizmet nesnesinde yöntem çağrıları olarak serbest bırakılması.

  2. Hizmet işlemi çağrısına yanıttan alınan nesnelerin giden iletilere dönüştürülmesi.

Windows Communication Foundation'da (WCF), kanal ve uç nokta dağıtıcıları yeni kanalları kabul etme, iletileri alma, yöntem dağıtma ve çağırma ve yanıt işlemeden sorumlu hizmet bileşenleridir. Bir ServiceHost nesne tarafından kullanıma sunulan her uç noktanın bir uç nokta dağıtıcısı ve ilişkili bir kanal dağıtıcısı vardır; buna ek olarak, çift yönlü iletişime katılan her istemcinin her geri çağırma uç noktası için bir uç nokta dağıtıcısı ve kanal dağıtıcısı da vardır.

, DispatchRuntime bir ileti tanınmadığında bile belirli bir sözleşmedeki tüm iletiler için kanalı veya uç nokta dağıtıcısını kesmenize ve genişletmenize olanak tanır. Sözleşmede bildirilen hiçbir iletiyle eşleşmeyen bir ileti geldiğinde, özellik tarafından UnhandledDispatchOperation döndürülen işleme gönderilir. Belirli bir işlem için tüm iletileri kesmek veya genişletmek için sınıfına DispatchOperation bakın.

Sınıfı tarafından DispatchRuntime kullanıma sunulan dört ana dağıtıcı genişletilebilirliği alanı vardır:

  1. Gönderme bileşenleri, kanal dağıtıcısının DispatchRuntime kanalları kabul etme ve kapatma biçimini özelleştirmek için özelliği tarafından ChannelDispatcher döndürülen ilişkili kanal dağıtıcısının ve özelliklerini kullanır. Bu kategori ve ChannelInitializers InputSessionShutdownHandlers özelliklerini içerir.

  2. İleti bileşenleri işlenen her ileti için özelleştirilir. Bu kategori , , OperationSelectorOperationsve ErrorHandlers özelliklerini içerirMessageInspectors.

  3. Örnek bileşenleri, hizmet türünün örneklerinin oluşturulmasını, ömrünü ve bertarafını özelleştirir. Hizmet nesnesi yaşam süreleri hakkında daha fazla bilgi için özelliğine InstanceContextMode bakın. Bu kategori ve InstanceContextInitializers InstanceProvider özelliklerini içerir.

  4. Güvenlikle ilgili bileşenler aşağıdaki özellikleri kullanabilir:

Genellikle özel uzantı nesneleri bir DispatchRuntime özelliğe atanır veya bir hizmet davranışı (uygulayan IServiceBehaviorbir nesne), sözleşme davranışı (uygulayan IContractBehaviorbir nesne) veya bir uç nokta davranışı (uygulayan IEndpointBehaviorbir nesne) tarafından bir koleksiyona eklenir. Ardından, yükleme davranışı nesnesi program aracılığıyla veya bir uygulama yapılandırma dosyası kullanılarak eklenmesini sağlamak için özel BehaviorExtensionElement bir nesne uygulanarak uygun davranış koleksiyonuna eklenir.

Özellikler

AutomaticInputSessionShutdown

İstemci bir çıkış oturumunu kapattığında hizmetin giriş oturumunu kapatıp kapatmayacağını belirten bir değer alır veya ayarlar.

CallbackClientRuntime

ClientRuntime Çift yönlü geri çağırma uç noktasına giden çağrılar için Windows Communication Foundation'a (WCF) yönelik uzantıların yükleme noktasını temsil eden nesneyi alır.

ChannelDispatcher

Bu dağıtım çalışma zamanı nesnesinin öğesini ChannelDispatcher alır.

ConcurrencyMode

Bir hizmet örneğinin iletileri sıralı olarak mı yoksa eşzamanlı olarak mı işlediğini alır veya ayarlar.

EndpointDispatcher

Bu dağıtım çalışma zamanı için öğesini EndpointDispatcher alır.

EnsureOrderedDispatch

İletilerin gönderilme sırasına göre gönderilip gönderilmediğini belirten bir değer alır.

ExternalAuthorizationPolicies

Bir talep kümesi verilip bir kullanıcıyı yetkilendirmek için bir dizi kural tanımlayan dış yetkilendirme ilkelerini alır veya ayarlar.

IgnoreTransactionMessageProperty

yoksayılıp yoksayılmayacağını TransactionMessagePropertyalır veya ayarlar.

ImpersonateCallerForAllOperations

Hizmetin gelen ileti tarafından sağlanan kimlik bilgilerini kullanarak kimliğine bürünmeye çalışıp çalışmayacağını denetleyebilen bir değer alır veya ayarlar.

ImpersonateOnSerializingReply

Yanıt işlemi seri hale getirildiğinde kimliğe bürünme kullanılıp kullanılmadığını belirten bir değer alır.

InputSessionShutdownHandlers

Giriş oturumlarının IInputSessionShutdown nasıl kapatıldığını denetlemek için özel işleyici eklemek için kullanılabilecek bir nesne koleksiyonunu alır.

InstanceContextInitializers

bir nesneyi ilk oluşturulduğunda incelemek veya değiştirmek için kullanılabilecek bir InstanceContext nesne koleksiyonunu IInstanceContextInitializer alır.

InstanceContextProvider

tarafından DispatchRuntimekullanılacak öğesini IInstanceContextProvider alır veya ayarlar.

InstanceProvider

Hizmet nesnelerinin oluşturulmasını ve yok edilmesini denetlemek için kullanabileceğiniz bir IInstanceProvider nesneyi alır veya ayarlar.

MessageAuthenticationAuditLevel

Başarılı ileti kimlik doğrulama olaylarının tarafından SecurityAuditLogLocationbelirtilen olay günlüğüne yazılıp yazılmayacağını belirten bir değer alır veya ayarlar.

MessageInspectors

Uç nokta üzerinden tüm gelen ve giden iletiler için özel bir ileti denetçisi eklemek için kullanılabilecek bir nesne koleksiyonunu IDispatchMessageInspector alır.

Operations

Belirli bir işlemin yürütme davranışını denetlemek için kullanılabilecek nesne koleksiyonunu DispatchOperation alır.

OperationSelector

Belirli bir ileti için IDispatchOperationSelector hedef DispatchOperation seçimini denetleen nesneyi alır veya ayarlar.

PreserveMessage

İletinin korunup korunmayacağını alır veya ayarlar.

PrincipalPermissionMode

Özelliğin nasıl CurrentPrincipal ayarlandığını belirten bir değer alır veya ayarlar.

ReleaseServiceInstanceOnTransactionComplete

İşlem başarıyla tamamlandıktan sonra hizmet nesnesinin geri dönüştürülip dönüştürülmeyeceğini belirten bir değer alır veya ayarlar.

RoleProvider

tarafından DispatchRuntimekullanılan özel RoleProvider öğeyi alır veya ayarlar.

SecurityAuditLogLocation

Denetim günlüğünün konumunu alır veya ayarlar.

ServiceAuthenticationManager

Hizmet işlemleri için kimlik doğrulama işlemini yöneten nesneyi alır veya ayarlar.

ServiceAuthorizationAuditLevel

Hangi hizmet yetkilendirme olaylarının denetlendiğini denetleye bir değer alır veya ayarlar.

ServiceAuthorizationManager

ServiceAuthorizationManager için yetkilendirme denetimi sağlayan öğesini DispatchRuntimealır.

SingletonInstanceContext

tarafından DispatchRuntimekullanılacak singleton'ı IInstanceContextProvider alır veya ayarlar.

SuppressAuditFailure

Günlüğe kaydetme işlemi sırasında oluşan kritik olmayan özel durumların gizlenip gizlenmeyeceğini belirten bir değer alır veya ayarlar.

SynchronizationContext

Hizmet işlemlerini çağırmak için kullanılan eşitleme bağlamını alır veya ayarlar.

TransactionAutoCompleteOnSessionClose

Oturum kapatıldığında geçerli işlemin otomatik olarak tamamlanıp tamamlanmayacağını belirten bir değer alır veya ayarlar.

Type

Sözleşme türünü alır veya ayarlar.

UnhandledDispatchOperation

Tanınmayan iletilerin dağıtıldığı işlemi alır veya ayarlar.

ValidateMustUnderstand

değerini ValidateMustUnderstandalı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