Sdílet prostřednictvím


WebMessageEncodingBindingElement Třída

Definice

Umožňuje čtení a zápis prostého textu XML, javascriptové notace (JSON) zpráv a "nezpracovaného" binárního obsahu při použití ve vazbě Windows Communication Foundation (WCF).

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
Dědičnost
WebMessageEncodingBindingElement
Implementuje

Poznámky

Kódování je proces transformace zprávy na sekvenci bajtů. Dekódování je zpětný proces. Tyto procesy vyžadují specifikaci kódování znaků. Funguje WebMessageEncodingBindingElement tak, že deleguje na řadu vnitřních kodérů pro zpracování kódování XML a JSON ve formátu prostého textu a "nezpracovaných" binárních dat. Toto delegování se provádí pomocí složeného kodéru zpráv.

Tento element vazby a jeho složený kodér se používají k řízení kódování ve scénářích, které nepoužívají zasílání zpráv SOAP používané .WebHttpBinding Tyto scénáře zahrnují "Plain Old XML" (POX), Representational State Transfer (REST), RSS (Really Simple Syndication) a Atom syndikation a Asynchronous JavaScript and XML (AJAX). Složený kodér zpráv nepodporuje soap nebo WS-Addressing, a proto MessageVersion vždy vrací None.

Element vazby lze nakonfigurovat s kódováním znaků zápisu v době vytváření pomocí konstruktoru WebMessageEncodingBindingElement(Encoding) . Hodnota Encoding určuje chování při zápisu v případech JSON a Textal XML. Při čtení se rozumí jakémukoli platnému kódování zpráv a kódování textu.

Tento konstruktor nastavuje výchozí hodnoty maximálního počtu čtenářů a zapisovačů, které jsou přiděleny fondům a které jsou k dispozici pro zpracování příchozích a odchozích zpráv bez přidělování nových čtenářů nebo zapisovačů. Vlastnosti MaxReadPoolSize a MaxWritePoolSize lze také použít k nastavení maximálního počtu čtenářů a zapisovačů, které mají být přiděleny. Ve výchozím nastavení je přiděleno 64 čtenářů a 16 autorů.

Výchozí omezení složitosti jsou také nastavena tímto konstruktorem přidruženého XmlDictionaryReaderQuotas k tomuto kódování ReaderQuotas vlastností k ochraně před třídou útoků dos (Denial of Service), které se snaží použít složitost zpráv k vázání prostředků zpracování koncového bodu.

WebMessageEncodingBindingElement Má metoduCreateMessageEncoderFactory, která podle potřeby vytvoří objekt pro kodér zpráv, který v závislosti na zadaném typu obsahu vytvoří dekodéry a kodéry zpráv JSON, XML nebo Raw.

Poskytuje WebMessageEncodingBindingElement také metody pro sestavení továren a naslouchacích procesů pro kanály, přes které proudí požadavky HTTP.

Složený kodér a jeho přidružené třídy a součásti konfigurace jsou použitelné v částečném vztahu důvěryhodnosti a toto použití nevyžaduje žádná zvláštní oprávnění.

Konstruktory

WebMessageEncodingBindingElement()

Inicializuje novou instanci WebMessageEncodingBindingElement třídy .

WebMessageEncodingBindingElement(Encoding)

Inicializuje novou instanci WebMessageEncodingBindingElement třídy se zadaným kódováním znaků zápisu.

Vlastnosti

ContentTypeMapper

Získá nebo nastaví, jak typ obsahu příchozí zprávy je mapován na formát.

CrossDomainScriptAccessEnabled

Získá nebo nastaví hodnotu, která určuje, zda je povolen přístup mezi doménovými skripty.

MaxReadPoolSize

Získá nebo nastaví hodnotu, která určuje maximální počet čtenářů, který je přidělen do fondu a který je k dispozici pro zpracování příchozích zpráv bez přidělení nových čtenářů.

MaxWritePoolSize

Získá nebo nastaví hodnotu, která určuje maximální počet zapisovačů, který je přidělen do fondu a který je k dispozici pro zpracování odchozích zpráv bez přidělování nových zapisovačů.

MessageVersion

Získá nebo nastaví verzi zprávy, která označuje, že element vazby nepoužívá SOAP nebo WS-Addressing.

ReaderQuotas

Získá omezení složitosti zpráv SOAP, které mohou být zpracovány koncovými body nakonfigurovanými pomocí této vazby.

WriteEncoding

Získá nebo nastaví kódování znaků, které se používají k zápisu textu zprávy.

Metody

BuildChannelFactory<TChannel>(BindingContext)

Sestaví zásobník pro vytváření kanálů na klientovi, který vytvoří zadaný typ kanálu pro zadaný kontext.

BuildChannelListener<TChannel>(BindingContext)

Sestaví zásobník naslouchacího procesu kanálu na klientovi, který přijímá zadaný typ kanálu pro zadaný kontext.

CanBuildChannelFactory<TChannel>(BindingContext)

Vrátí hodnotu, která označuje, zda element vazby může vytvořit objekt pro vytváření kanálů pro konkrétní typ kanálu.

(Zděděno od BindingElement)
CanBuildChannelListener<TChannel>(BindingContext)

Vrátí hodnotu, která označuje, zda aktuální vazba může sestavit naslouchací proces pro zadaný typ kanálu a kontextu.

Clone()

Vytvoří nový WebMessageEncodingBindingElement objekt inicializovaný z aktuálního objektu.

CreateMessageEncoderFactory()

Vytvoří objekt pro kodér zpráv, který vytváří kodéry zpráv, které můžou zapisovat zprávy JSON (JavaScript Object Notation) nebo zprávy XML.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetProperty<T>(BindingContext)

Vrátí objekt požadovaného typu, pokud je k dispozici, z příslušné vrstvy v zásobníku kanálů nebo null pokud neexistuje.

GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext)

Generuje informace o kontraktu WSDL ze zásad kódování obsažených v elementu vazby.

IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext)

Generuje informace o kontraktu WSDL ze zásad kódování obsažených v elementu vazby.

Platí pro