WebMessageEncodingBindingElement Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lehetővé teszi az egyszerű szöveges XML, JavaScript Object Notation (JSON) üzenetkódolások és a "nyers" bináris tartalom olvasását és írását, amikor a Windows kommunikációs alaprendszer (WCF) kötésben használják.
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
- Öröklődés
- Megvalósítás
Megjegyzések
A kódolás az üzenet bájtok sorozatává alakításának folyamata. A dekódolás a fordított folyamat. Ezek a folyamatok megkövetelik a karakterkódolás specifikációját. Ez WebMessageEncodingBindingElement úgy működik, hogy belső kódolók sorozatára delegál az egyszerű szöveges XML- és JSON-kódolások, valamint a "nyers" bináris adatok kezelésére. Ezt a delegálást egy összetett üzenetkódoló végzi.
Ez a kötési elem és annak összetett kódolója a kódolás szabályozására szolgál olyan helyzetekben, amelyek nem használják a SOAP üzenetkezelést, amelyet a rendszer használ WebHttpBinding. Ilyen forgatókönyvek például a "Plain Old XML" (POX), a Representational State Transfer (REST), a Really Simple Syndication (RSS) és az Atom syndication, valamint az Aszinkron JavaScript és XML (AJAX). Az összetett üzenetkódoló nem támogatja a SOAP vagy a WS-Addressing szolgáltatást, ezért mindig MessageVersion ad vissza None.
A kötési elem konfigurálható írási karakterkódolással a konstruktor használatával az WebMessageEncodingBindingElement(Encoding) építkezés során. Az Encoding érték a JSON- és szöveges XML-esetek írási viselkedését határozza meg. Olvasás esetén a rendszer minden érvényes üzenetkódolást és szövegkódolást megért.
Ez a konstruktor beállítja az alapértelmezett értékeket a készletekhez lefoglalt és a bejövő és kimenő üzenetek feldolgozásához elérhető olvasók és írók maximális számára új olvasók vagy írók kiosztása nélkül. A tulajdonságok, MaxReadPoolSize és MaxWritePoolSize a maximálisan lefoglalandó olvasók és írók számának beállítására is használhatók. Alapértelmezés szerint 64 olvasó és 16 író van lefoglalva.
Az alapértelmezett összetettségi korlátozásokat a konstruktor is beállítja a XmlDictionaryReaderQuotas tulajdonság által a kódoláshoz ReaderQuotas társítottan, hogy védelmet nyújtson a szolgáltatásmegtagadási (DOS-) támadások ellen, amelyek az üzenet összetettségét próbálják meg használni a végpontfeldolgozási erőforrások összekapcsolásához.
A WebMessageEncodingBindingElement metódus olyan CreateMessageEncoderFactory üzenetkódoló-előállítót hoz létre, amely a megadott tartalomtípustól függően megfelelő JSON-, XML- vagy Raw-üzenetdekódereket és kódolókat állít elő.
Az WebMessageEncodingBindingElement is biztosítja a módszereket, hogy építse ki a gyárak és a figyelők a csatornák, amelyeken keresztül a HTTP-kérések áramlását.
Az összetett kódoló, valamint a hozzá tartozó osztályok és konfigurációs összetevők részleges megbízhatósággal használhatók, és ez a használat nem igényel különleges engedélyeket.
Konstruktorok
| Name | Description |
|---|---|
| WebMessageEncodingBindingElement() |
Inicializálja a WebMessageEncodingBindingElement osztály új példányát. |
| WebMessageEncodingBindingElement(Encoding) |
Inicializálja az WebMessageEncodingBindingElement osztály új példányát egy megadott írási karakterkódolással. |
Tulajdonságok
| Name | Description |
|---|---|
| ContentTypeMapper |
Lekérdezi vagy beállítja, hogy a bejövő üzenetek tartalomtípusa hogyan legyen formázva. |
| CrossDomainScriptAccessEnabled |
Lekéri vagy beállít egy értéket, amely meghatározza, hogy engedélyezve van-e a tartományközi szkripthozzáférés. |
| MaxReadPoolSize |
Lekéri vagy beállít egy értéket, amely meghatározza a készlethez lefoglalt olvasók maximális számát, és amely új olvasók kiosztása nélkül is feldolgozható a bejövő üzenetekben. |
| MaxWritePoolSize |
Lekéri vagy beállít egy értéket, amely meghatározza a készlethez lefoglalt írók maximális számát, és amely új írók kiosztása nélkül használható a kimenő üzenetek feldolgozására. |
| MessageVersion |
Lekéri vagy beállítja azt az üzenetverziót, amely azt jelzi, hogy a kötési elem nem használja a SOAP vagy a WS-Addressing elemet. |
| ReaderQuotas |
Korlátozza a SOAP-üzenetek összetettségét, amelyeket a kötéssel konfigurált végpontok feldolgozhatnak. |
| WriteEncoding |
Lekéri vagy beállítja az üzenet szövegének megírásához használt karakterkódolást. |
Metódusok
| Name | Description |
|---|---|
| BuildChannelFactory<TChannel>(BindingContext) |
A channel factory vermet azon az ügyfélen hozza létre, amely egy adott típusú csatornát hoz létre egy adott környezethez. |
| BuildChannelListener<TChannel>(BindingContext) |
A csatornafigyelő vermet azon az ügyfélen hozza létre, amely egy megadott típusú csatornát fogad el egy adott környezethez. |
| CanBuildChannelFactory<TChannel>(BindingContext) |
Egy értéket ad vissza, amely jelzi, hogy a kötési elem képes-e csatorna-előállítót létrehozni egy adott csatornatípushoz. (Öröklődés forrása BindingElement) |
| CanBuildChannelListener<TChannel>(BindingContext) |
Olyan értéket ad vissza, amely jelzi, hogy az aktuális kötés képes-e figyelőt létrehozni egy adott típusú csatornához és környezethez. |
| Clone() |
Létrehoz egy új WebMessageEncodingBindingElement objektumot az aktuálisból inicializálva. |
| CreateMessageEncoderFactory() |
Létrehoz egy üzenetkódoló-előállítót, amely JavaScript Object Notation (JSON) vagy XML-üzenetek írására képes üzenetkódolókat hoz létre. |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetProperty<T>(BindingContext) |
Visszaadja a kért típusú objektumot, ha van ilyen, a csatorna verem megfelelő rétegéből, vagy |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |
Explicit interfész-implementációk
| Name | Description |
|---|---|
| IWsdlExportExtension.ExportContract(WsdlExporter, WsdlContractConversionContext) |
WSDL-szerződésadatokat hoz létre a kötési elemben található kódolási szabályzatokból. |
| IWsdlExportExtension.ExportEndpoint(WsdlExporter, WsdlEndpointConversionContext) |
WSDL-szerződésadatokat hoz létre a kötési elemben található kódolási szabályzatokból. |