WebMessageEncodingBindingElement Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Gör att Oformaterat XML-meddelande, JSON-meddelandekodningar (JavaScript Object Notation) och "raw"-binärt innehåll kan läsas och skrivas när de används i en WCF-bindning (Windows Communication Foundation).
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
- Arv
- Implementeringar
Kommentarer
Kodning är processen att omvandla ett meddelande till en sekvens med byte. Avkodning är den omvända processen. Dessa processer kräver specifikation av en teckenkodning. Fungerar WebMessageEncodingBindingElement genom att delegera till en serie inre kodare för att hantera oformaterade XML- och JSON-kodningar och "råa" binära data. Den här delegeringen görs av en sammansatt meddelandekodare.
Det här bindningselementet och dess sammansatta kodare används för att styra kodningen i scenarier som inte använder SOAP-meddelanden som används av WebHttpBinding. Dessa scenarier inkluderar "Plain Old XML" (POX), Representational State Transfer (REST), Really Simple Syndication (RSS) och Atom syndication samt Asynkron JavaScript och XML (AJAX). Den sammansatta meddelandekodaren stöder inte SOAP eller WS-Addressing och returnerar MessageVersiondärför None alltid .
Bindningselementet kan konfigureras med en skrivteckenkodning vid byggtiden med konstruktorn WebMessageEncodingBindingElement(Encoding) . Värdet Encoding anger beteendet vid skrivning för JSON- och Text-XML-fallen. Vid läsning förstås alla giltiga meddelandekodningar och textkodning.
Den här konstruktorn anger standardvärden på det maximala antalet läsare och skrivare som har allokerats till pooler och som är tillgängliga för att bearbeta inkommande och utgående meddelanden utan att tilldela nya läsare eller skrivare. Egenskaperna MaxReadPoolSize och MaxWritePoolSize kan också användas för att ange det maximala antalet läsare respektive skrivare som ska allokeras. Som standard allokeras 64 läsare och 16 skrivare.
Standardkomplexitetsbegränsningar anges också av den här konstruktorn för den som är associerad med den XmlDictionaryReaderQuotasReaderQuotas här kodningen av egenskapen för att skydda mot en klass av DOS-attacker (Denial of Service) som försöker använda meddelandekomplexitet för att binda slutpunktsbearbetningsresurser.
WebMessageEncodingBindingElement Har en CreateMessageEncoderFactory metod som skapar en meddelandekodarfabrik som producerar JSON-, XML- eller Raw-meddelandedekodare och kodare efter behov beroende på vilken innehållstyp som angetts.
Innehåller WebMessageEncodingBindingElement också metoder för att skapa fabriker och lyssnare för de kanaler genom vilka HTTP-begäranden flödar.
Den sammansatta kodaren och dess associerade klasser och konfigurationskomponenter kan användas i partiellt förtroende och den här användningen kräver inga särskilda behörigheter.
Konstruktorer
| Name | Description |
|---|---|
| WebMessageEncodingBindingElement() |
Initierar en ny instans av WebMessageEncodingBindingElement klassen. |
| WebMessageEncodingBindingElement(Encoding) |
Initierar en ny instans av WebMessageEncodingBindingElement klassen med en angiven skrivteckenkodning. |
Egenskaper
| Name | Description |
|---|---|
| ContentTypeMapper |
Hämtar eller anger hur innehållstypen för ett inkommande meddelande mappas till ett format. |
| CrossDomainScriptAccessEnabled |
Hämtar eller anger ett värde som avgör om åtkomst mellan domänskript är aktiverat. |
| MaxReadPoolSize |
Hämtar eller anger ett värde som anger det maximala antalet läsare som allokeras till en pool och som är tillgängligt för att bearbeta inkommande meddelanden utan att allokera nya läsare. |
| MaxWritePoolSize |
Hämtar eller anger ett värde som anger det maximala antalet skrivare som allokeras till en pool och som är tillgängligt för att bearbeta utgående meddelanden utan att allokera nya skrivare. |
| MessageVersion |
Hämtar eller anger den meddelandeversion som anger att bindningselementet inte använder SOAP eller WS-Addressing. |
| ReaderQuotas |
Hämtar begränsningar för komplexiteten i SOAP-meddelanden som kan bearbetas av slutpunkter som konfigurerats med den här bindningen. |
| WriteEncoding |
Hämtar eller anger teckenkodningen som används för att skriva meddelandetexten. |
Metoder
| Name | Description |
|---|---|
| BuildChannelFactory<TChannel>(BindingContext) |
Skapar kanalfabriksstacken på klienten som skapar en angiven typ av kanal för en angiven kontext. |
| BuildChannelListener<TChannel>(BindingContext) |
Skapar kanallyssningsstacken på klienten som accepterar en angiven typ av kanal för en angiven kontext. |
| CanBuildChannelFactory<TChannel>(BindingContext) |
Returnerar ett värde som anger om bindningselementet kan skapa en kanalfabrik för en viss typ av kanal. (Ärvd från BindingElement) |
| CanBuildChannelListener<TChannel>(BindingContext) |
Returnerar ett värde som anger om den aktuella bindningen kan skapa en lyssnare för en angiven typ av kanal och kontext. |
| Clone() |
Skapar ett nytt WebMessageEncodingBindingElement objekt som initierats från det aktuella objektet. |
| CreateMessageEncoderFactory() |
Skapar en meddelandekodarfabrik som skapar meddelandekodare som kan skriva antingen JavaScript Object Notation (JSON) eller XML-meddelanden. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetProperty<T>(BindingContext) |
Returnerar objektet av den begärda typen, om det finns, från lämpligt lager i kanalstacken eller |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
Explicita gränssnittsimplementeringar
| Name | Description |
|---|---|
| IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext) |
Genererar WSDL-kontraktsinformation från kodningsprinciper som finns i bindningselementet. |
| IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext) |
Genererar WSDL-kontraktsinformation från kodningsprinciper som finns i bindningselementet. |