Aracılığıyla paylaş


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 yetki 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ı 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 durumları için yazma davranışını belirtir. Okunduysa, tüm geçerli ileti kodlaması ve metin kodlaması anlaşılır.

Bu oluşturucu, havuzlara ayrılan ve sırasıyla yeni okuyucu veya yazıcı ayırmadan gelen ve giden iletileri işlemek için kullanılabilen en fazla okuyucu ve yazıcı sayısına göre varsayılan değerleri ayarlar. ve özellikleri MaxReadPoolSizeMaxWritePoolSize , 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 yazıcı 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şı koruma sağlamak 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 aktığı 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

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

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

Name Description
BuildChannelFactory<TChannel>(BindingContext)

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

BuildChannelListener<TChannel>(BindingContext)

belirtilen bir bağlam için belirtilen kanal türünü kabul eden istemcide kanal dinleyicisi 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ürün nesnesini döndürür.

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)

Belirtik Arabirim Kullanımları

Name Description
IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext)

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

IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext)

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

Şunlara uygulanır