XPathMessageFilter 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.
Representerar en fråga i ett XML-dokument som definierats av ett XPath 1.0-uttryck.
public ref class XPathMessageFilter : System::ServiceModel::Dispatcher::MessageFilter, System::Xml::Serialization::IXmlSerializable
public class XPathMessageFilter : System.ServiceModel.Dispatcher.MessageFilter, System.Xml.Serialization.IXmlSerializable
type XPathMessageFilter = class
inherit MessageFilter
interface IXmlSerializable
Public Class XPathMessageFilter
Inherits MessageFilter
Implements IXmlSerializable
- Arv
- Implementeringar
Kommentarer
En XPathMessageFilter använder ett XPath-uttryck för att avgöra om ett XML-dokument innehåller specifika element, attribut, text eller andra XML-syntaktiska konstruktioner. Vanligtvis använder ett program en XPathMessageFilter i en slutpunkt för att fråga innehållet i ett SOAP-meddelande och vidtar sedan lämplig åtgärd baserat på resultatet av frågan. En köprocess kan till exempel använda en XPath-fråga för att kontrollera prioritetselementet i ett känt huvud för att avgöra om ett meddelande ska flyttas till köns framsida.
XML Path Language (XPath) tillhandahåller ett språk för att hantera delar av ett XML-dokument. Den primära syntaktiska konstruktionen i XPath är ett uttryck som definierar hur du passerar den logiska strukturen i ett XML-dokument och en ADRESS eller identifierar en XPath-datatyp. Mer specifikt utvärderar XPath-implementeringar ett uttryck mot strukturen i ett XML-dokument för att ge en av de fyra grundläggande XPath-datatyperna: strängar, tal, booleska och noduppsättningar. De stöder också funktioner som konverterar en XPath-datatyp till en sträng, ett tal eller en boolesk datatyp. Om en metod förväntar sig någon av dessa tre datatyper konverteras resultatet av uttrycksutvärderingen implicit. Observera att dessa tre datatyper inte kan konverteras till en noduppsättningstyp. SPRÅKET FÖR XML-sökväg beskrivs fullständigt i W3C XML Path Language 1.0-specifikationen.
Tal i XPath-uttryck uttrycks som 64-bitarsvärden med dubbel precision. Därför kan XPath-uttryck som omfattar testningsnummer med många signifikanta siffror returnera felaktiga resultat på grund av problem med flyttalsprecision. Mer information finns i XML Path Language (XPath) Version 1.0, avsnitt 3.5.
Konstruktorer
| Name | Description |
|---|---|
| XPathMessageFilter() |
Initierar en ny instans av XPathMessageFilter klassen som matchar alla välformade XML-dokument. |
| XPathMessageFilter(String, XmlNamespaceManager) |
Initierar en ny instans av XPathMessageFilter klassen med det angivna XPath-uttrycket och namnområdeshanteraren. |
| XPathMessageFilter(String, XsltContext) |
Initierar en ny instans av XPathMessageFilter klassen med ett angivet XPath-uttryck och XsltContext. |
| XPathMessageFilter(String) |
Initierar en ny instans av XPathMessageFilter klassen med ett XPath-uttryck för att ange frågevillkor för filtret. |
| XPathMessageFilter(XmlReader, XmlNamespaceManager) |
Initierar en ny instans av XPathMessageFilter klassen genom att läsa i en strömmad XPath med en angiven XML-läsare och använda den angivna namnområdeshanteraren. |
| XPathMessageFilter(XmlReader, XsltContext) |
Initierar en ny instans av XPathMessageFilter klassen genom att läsa en strömmad XPath med en angiven XML-läsare och använda XsltContext för att matcha namnområden, anpassade funktioner och variabler. |
| XPathMessageFilter(XmlReader) |
Initierar en ny instans av XPathMessageFilter klassen genom att läsa en strömmad XPath med den angivna XML-läsaren. |
Egenskaper
| Name | Description |
|---|---|
| Namespaces |
Hämtar den chef som löser namnområdesprefix i XPath-uttrycket som definierar filtret. |
| NodeQuota |
Hämtar eller anger det maximala antalet noder som ska granskas under filterutvärderingen. |
| XPath |
Hämtar XPath-uttrycket som definierar frågevillkoren för filtret. |
Metoder
| Name | Description |
|---|---|
| CreateFilterTable<FilterData>() |
Skapar en XPathMessageFilterTable<TFilterData> som har en angiven typ av data som är associerad med den. |
| 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) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| Match(Message) |
Testar om ett angivet meddelande uppfyller kriterierna för XPath-filtret. Det här formuläret har inte åtkomst till meddelandets brödtext. |
| Match(MessageBuffer) |
Avgör om ett buffrat meddelande uppfyller frågevillkoren för XPath-filtret. |
| Match(SeekableXPathNavigator) |
Avgör om XML-dokumentet som tillhandahålls av den angivna optimerade XPath-navigatören uppfyller frågevillkoren för XPath-filtret. |
| Match(XPathNavigator) |
Utvärderar filtret över den angivna XPath-navigatören. |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| OnGetSchema() |
Hämtar schemat för det aktuella XML-dokumentet. |
| OnReadXml(XmlReader) |
Läser den aktuella XML-noden. |
| OnWriteXml(XmlWriter) |
Skriver en nod med . |
| ReadXPath(XmlReader, XmlNamespaceManager) |
Initierar den aktuella instansen XPathMessageFilter av med en XPath som hämtats från en angiven XML-läsare med hjälp av en angiven namnområdeshanterare. |
| StaticGetSchema(XmlSchemaSet) |
Hämtar den typ av XML-schema som används för att serialisera XPath-filtret. |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
| TrimToSize() |
Komprimerar XPath-filtret, som frigör allt oanvänt minne. |
| WriteXPath(XmlWriter, IXmlNamespaceResolver) |
Serialiserar XPath-filtret till en XmlWriter. |
| WriteXPathTo(XmlWriter, String, String, String, Boolean) |
Skriver XML XPath-elementet med en angiven XML-skrivare. |
Explicita gränssnittsimplementeringar
| Name | Description |
|---|---|
| IXmlSerializable.GetSchema() |
En explicit gränssnittsimplementering som hämtar det aktuella schemat. |
| IXmlSerializable.ReadXml(XmlReader) |
En explicit gränssnittsimplementering som läser den aktuella XML-noden. |
| IXmlSerializable.WriteXml(XmlWriter) |
En explicit gränssnittsimplementering som skriver en XML-nod med . |