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ştirebilecek ö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 nesnesi üzerinde yöntem çağrıları olarak serbest bırakılması.

  2. Yanıttan alınan nesnelerin bir hizmet işlemi çağrısına çıkış mesajlarına 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 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, özelliği tarafından UnhandledDispatchOperation döndürülen işleme gönderilir. Belirli bir operasyonun tüm iletilerine müdahale etmek veya genişletmek için DispatchOperation sınıfına bakın.

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

  1. Dağıtım 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 ChannelInitializersInputSessionShutdownHandlers özelliklerini içerir.

  2. İleti bileşenleri işlenen her ileti için özelleştirilir. Bu kategori , , MessageInspectorsOperationSelectorve Operations özelliklerini içerirErrorHandlers.

  3. Örnek bileşenleri, hizmet türünün örneklerinin oluşturulmasını, kullanım ömrünü ve atılmasını özelleştirir. Hizmet nesnesi yaşam süreleri hakkında daha fazla bilgi için özellik InstanceContextMode kısmına bakın. Bu kategori ve InstanceContextInitializersInstanceProvider ö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), bir sözleşme davranışı (uygulayan IContractBehaviornesne) 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

Name Description
AutomaticInputSessionShutdown

İstemci bir çıkış oturumunu kapattığında hizmetin bir giriş oturumunu kapatıp kapatmadığı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 (WCF) uzantılarını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 gösteren bir değer alır.

ExternalAuthorizationPolicies

Bir talep kümesi göz önüne alındığında, 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ışmadığını denetleyebilen bir değer alır veya ayarlar.

ImpersonateOnSerializingReply

Yanıt işlemini seri hale getirme işleminde kimliğe bürünme kullanılıp kullanılmadığını gösteren 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 koleksiyonu alır.

InstanceContextInitializers

Bir nesneyi ilk oluşturulduğunda incelemek veya değiştirmek için kullanılabilecek bir InstanceContext nesne koleksiyonu 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ğrulaması 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 boyunca tüm gelen ve giden iletiler için özel ileti denetçisi eklemek için kullanılabilecek bir nesne koleksiyonu IDispatchMessageInspector alır.

Operations

Belirli bir işlemin yürütme davranışını denetlemek için kullanılabilecek bir nesne koleksiyonu 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üldüğünü 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 bir kimlik doğrulama işlemini yöneten nesneyi alır veya ayarlar.

ServiceAuthorizationAuditLevel

Hangi hizmet yetkilendirme olaylarının denetlendiğini denetleen 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 gönderildiği işlemi alır veya ayarlar.

ValidateMustUnderstand

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