WebMessageEncodingBindingElement Sınıf

Tanım

Windows Communication Foundation (WCF) bağlamasında kullanıldığında düz metin XML, JavaScript Nesne Gösterimi (JSON) ileti kodlamaları ve "ham" ikili içeriğin okunmasını ve yazmasını sağlar.

public ref class WebMessageEncodingBindingElement sealed : System::ServiceModel::Channels::MessageEncodingBindingElement, System::ServiceModel::Description::IWsdlExportExtension
public sealed class WebMessageEncodingBindingElement : System.ServiceModel.Channels.MessageEncodingBindingElement, System.ServiceModel.Description.IWsdlExportExtension
type WebMessageEncodingBindingElement = class
    inherit MessageEncodingBindingElement
    interface IWsdlExportExtension
Public NotInheritable Class WebMessageEncodingBindingElement
Inherits MessageEncodingBindingElement
Implements IWsdlExportExtension
Devralma
WebMessageEncodingBindingElement
Uygulamalar

Açıklamalar

Kodlama, bir iletiyi bayt dizisine dönüştürme işlemidir. Kod çözme işlemi ters işlemdir. Bu işlemler için bir karakter kodlaması belirtimi gerekir. düz WebMessageEncodingBindingElement metin XML ve JSON kodlamalarını ve "ham" ikili verileri işlemek için bir dizi iç kodlayıcıya temsilci vererek çalışır. Bu temsilci seçme işlemi bileşik ileti kodlayıcı tarafından gerçekleştirilir.

Bu bağlama öğesi ve bileşik kodlayıcı, tarafından kullanılan SOAP mesajlaşmasını kullanmayan senaryolarda kodlamayı WebHttpBindingdenetlemek için kullanılır. Bu senaryolar arasında "Düz Eski XML" (POX), Temsili Durum Aktarımı (REST), Gerçekten Basit Dağıtım (RSS) ve Atom dağıtımı ve Zaman Uyumsuz JavaScript ve XML (AJAX) bulunur. Bileşik ileti kodlayıcısı SOAP veya WS-Addressing'i desteklemez ve bu nedenle MessageVersion her zaman döndürür None.

Bağlama öğesi oluşturucu kullanılarak oluşturma zamanında yazma karakteri kodlamasıyla WebMessageEncodingBindingElement(Encoding) yapılandırılabilir. değeri, Encoding JSON ve Textual XML örnekleri için yazma davranışını belirtir. Okunduysa, tüm geçerli ileti kodlamaları ve metin kodlamaları anlaşılır.

Bu oluşturucu, havuzlara ayrılan ve sırasıyla yeni okuyucular veya yazıcılar ayırmadan gelen ve giden iletileri işlemek için kullanılabilen en fazla okuyucu ve yazıcı sayısına varsayılan değerleri ayarlar. ve MaxWritePoolSize özellikleriMaxReadPoolSize, sırasıyla ayrılacak en fazla okuyucu ve yazıcı sayısını ayarlamak için de kullanılabilir. Varsayılan olarak 64 okuyucu ve 16 yazar ayrılır.

Varsayılan karmaşıklık kısıtlamaları, uç nokta işleme kaynaklarını bağlamak için ileti karmaşıklığını kullanmaya çalışan bir hizmet reddi (DOS) saldırılarına karşı korunmak için özelliği tarafından ReaderQuotas bu kodlamayla ilişkili üzerinde bu oluşturucu XmlDictionaryReaderQuotas tarafından da ayarlanır.

, WebMessageEncodingBindingElement belirtilen içerik türüne bağlı olarak uygun şekilde JSON, XML veya Raw ileti kod çözücüleri ve kodlayıcılar üreten bir ileti kodlayıcı fabrikası oluşturan bir CreateMessageEncoderFactory yönteme sahiptir.

ayrıca WebMessageEncodingBindingElement , HTTP isteklerinin akışı yapılan kanallar için fabrikaları ve dinleyicileri derleme yöntemlerini de sağlar.

Bileşik kodlayıcı ve ilişkili sınıfları ve yapılandırma bileşenleri kısmi güven içinde kullanılabilir ve bu kullanım herhangi bir özel izin gerektirmez.

Oluşturucular

WebMessageEncodingBindingElement()

WebMessageEncodingBindingElement sınıfının yeni bir örneğini başlatır.

WebMessageEncodingBindingElement(Encoding)

Belirtilen yazma karakteri kodlamasıyla WebMessageEncodingBindingElement sınıfının yeni bir örneğini başlatır.

Özellikler

ContentTypeMapper

Gelen iletinin içerik türünün biçimle nasıl eşleneceğini alır veya ayarlar.

CrossDomainScriptAccessEnabled

Etki alanları arası betik erişiminin etkinleştirilip etkinleştirilmediğini belirleyen bir değer alır veya ayarlar.

MaxReadPoolSize

Havuza ayrılan ve yeni okuyucu ayırmadan gelen iletileri işlemek için kullanılabilen en fazla okuyucu sayısını belirten bir değer alır veya ayarlar.

MaxWritePoolSize

Havuza ayrılan ve yeni yazıcı ayırmadan giden iletileri işlemek için kullanılabilen en fazla yazıcı sayısını belirten bir değer alır veya ayarlar.

MessageVersion

Bağlama öğesinin SOAP veya WS-Addressing kullanmadığını belirten ileti sürümünü alır veya ayarlar.

ReaderQuotas

Bu bağlama ile yapılandırılan uç noktalar tarafından işlenebilen SOAP iletilerinin karmaşıklığıyla ilgili kısıtlamaları alır.

WriteEncoding

İleti metnini yazmak için kullanılan karakter kodlamasını alır veya ayarlar.

Yöntemler

BuildChannelFactory<TChannel>(BindingContext)

Belirtilen bağlam için belirtilen kanal türünü oluşturan istemci üzerinde kanal fabrikası yığınını oluşturur.

BuildChannelListener<TChannel>(BindingContext)

Belirtilen bağlam için belirtilen kanal türünü kabul eden istemcide kanal dinleyici yığınını oluşturur.

CanBuildChannelFactory<TChannel>(BindingContext)

Bağlama öğesinin belirli bir kanal türü için kanal fabrikası oluşturup oluşturamayacağını gösteren bir değer döndürür.

(Devralındığı yer: BindingElement)
CanBuildChannelListener<TChannel>(BindingContext)

Geçerli bağlamanın belirtilen kanal ve bağlam türü için dinleyici oluşturup oluşturamayacağını gösteren bir değer döndürür.

Clone()

Geçerli nesneden başlatılan yeni WebMessageEncodingBindingElement bir nesne oluşturur.

CreateMessageEncoderFactory()

JavaScript Nesne Gösterimi (JSON) veya XML iletileri yazabilen ileti kodlayıcıları üreten bir ileti kodlayıcı fabrikası oluşturur.

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)
GetProperty<T>(BindingContext)

Kanal yığınındaki uygun katmandan veya null mevcut değilse istenen türdeki nesneyi döndürür.

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)

Belirtik Arabirim Kullanımları

IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext)

Bağlama öğesinde yer alan kodlama ilkelerinden WSDL sözleşme bilgilerini oluşturur.

IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext)

Bağlama öğesinde yer alan kodlama ilkelerinden WSDL sözleşme bilgilerini oluşturur.

Şunlara uygulanır