Udostępnij za pośrednictwem


XPathMessageFilter Klasa

Definicja

Reprezentuje zapytanie w dokumencie XML zdefiniowanym przez wyrażenie XPath 1,0.

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
Dziedziczenie
XPathMessageFilter
Implementuje

Uwagi

XPathMessageFilterUżywa wyrażenia XPath, aby określić, czy dokument XML zawiera konkretne elementy, atrybuty, tekst lub inne konstrukcje SKŁADNI XML. Zazwyczaj aplikacja używa XPathMessageFilter w punkcie końcowym zapytania o zawartość komunikatu protokołu SOAP, a następnie pobiera odpowiednią akcję na podstawie wyników zapytania. Proces kolejkowania, na przykład, może użyć zapytania XPath do sprawdzenia elementu priorytet znanego nagłówka, aby zdecydować, czy przenieść komunikat na pierwszy plan kolejki.

Język ścieżki XML (XPath) zawiera język do adresowania części dokumentu XML. Podstawowa konstrukcja składni w XPath jest wyrażeniem, które definiuje sposób przechodzenia do struktury logicznej dokumentu XML i adresu lub identyfikowania typu danych XPath. W szczególnych przypadkach implementacje XPath obliczają wyrażenie względem struktury dokumentu XML, aby uzyskać jeden z czterech podstawowych typów danych XPath: ciągi, liczby, wartości logiczne i zestawy węzłów. Obsługują one również funkcje, które konwertują typ danych XPath na typ danych String, Number lub Boolean. Jeśli Metoda oczekuje jednego z tych trzech typów danych, wynik obliczania wyrażenia jest niejawnie konwertowany. Należy zauważyć, że te trzy typy danych nie mogą być konwertowane na typ zestawu węzłów. Język ścieżki XML został w pełni opisany w specyfikacji XML języka ścieżki W3C 1,0.

Liczby w wyrażeniach XPath są wyrażane jako wartości 64-bitowe o podwójnej precyzji. W związku z tym wyrażenia XPath, które obejmują numery testów z wieloma cyframi znaczącymi, mogą zwracać nieprawidłowe wyniki ze względu na problemy z dokładnością zmiennoprzecinkową. Aby uzyskać więcej informacji, zobacz XML Path Language (XPath) w wersji 1,0, sekcja 3,5.

Konstruktory

XPathMessageFilter()

Inicjuje nowe wystąpienie XPathMessageFilter klasy, które dopasowuje wszystkie dobrze sformułowane dokumenty XML.

XPathMessageFilter(String)

Inicjuje nowe wystąpienie XPathMessageFilter klasy za pomocą wyrażenia XPath, aby określić kryteria zapytania dla filtru.

XPathMessageFilter(String, XmlNamespaceManager)

Inicjuje nowe wystąpienie XPathMessageFilter klasy przy użyciu określonego wyrażenia XPath i Menedżera przestrzeni nazw.

XPathMessageFilter(String, XsltContext)

Inicjuje nowe wystąpienie XPathMessageFilter klasy przy użyciu określonego wyrażenia XPath i XsltContext .

XPathMessageFilter(XmlReader)

Inicjuje nowe wystąpienie XPathMessageFilter klasy poprzez odczytywanie strumieniowego wyrażenia XPath z określonym czytnikiem XML.

XPathMessageFilter(XmlReader, XmlNamespaceManager)

Inicjuje nowe wystąpienie XPathMessageFilter klasy przez odczytanie w strumieniowym elemencie XPath z określonym czytnikiem XML i użycie określonego Menedżera przestrzeni nazw.

XPathMessageFilter(XmlReader, XsltContext)

Inicjuje nowe wystąpienie XPathMessageFilter klasy poprzez odczytywanie strumieniowego wyrażenia XPath z określonym czytnikiem XML i używanie XsltContext do rozpoznawania przestrzeni nazw, funkcji niestandardowych i zmiennych.

Właściwości

Namespaces

Pobiera Menedżera, który rozwiązuje prefiksy przestrzeni nazw w wyrażeniu XPath definiującym filtr.

NodeQuota

Pobiera lub ustawia maksymalną liczbę węzłów, które mają być wyszukiwane podczas obliczania filtru.

XPath

Pobiera wyrażenie XPath, które definiuje kryteria zapytania dla filtru.

Metody

CreateFilterTable<FilterData>()

Tworzy obiekt XPathMessageFilterTable<TFilterData> , który ma powiązane z nim dane.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
Match(Message)

Testuje, czy określony komunikat spełnia kryteria filtru XPath. Ten formularz nie może uzyskać dostępu do treści wiadomości.

Match(MessageBuffer)

Określa, czy buforowany komunikat spełnia kryteria zapytania filtru XPath.

Match(SeekableXPathNavigator)

Określa, czy dokument XML dostarczony przez określony zoptymalizowany Nawigator XPath spełnia kryteria zapytania filtru XPath.

Match(XPathNavigator)

Oblicza filtr dla określonego nawigatora XPath.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
OnGetSchema()

Pobiera schemat dla bieżącego dokumentu XML.

OnReadXml(XmlReader)

Odczytuje bieżący węzeł XML.

OnWriteXml(XmlWriter)

Zapisuje węzeł przy użyciu writer .

ReadXPath(XmlReader, XmlNamespaceManager)

Inicjuje bieżące wystąpienie elementu XPathMessageFilter z ścieżką XPath uzyskaną z określonego czytnika XML przy użyciu określonego Menedżera przestrzeni nazw.

StaticGetSchema(XmlSchemaSet)

Pobiera typ schematu XML służącego do serializacji filtru XPath.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
TrimToSize()

Kompaktuje filtr XPath, który zwalnia wszystkie nieużywane pamięci.

WriteXPath(XmlWriter, IXmlNamespaceResolver)

Serializować filtr XPath do XmlWriter .

WriteXPathTo(XmlWriter, String, String, String, Boolean)

Zapisuje element XPath XML z określonym składnikiem zapisywania XML.

Jawne implementacje interfejsu

IXmlSerializable.GetSchema()

Jawna implementacja interfejsu, która pobiera bieżący schemat.

IXmlSerializable.ReadXml(XmlReader)

Jawna implementacja interfejsu, która odczytuje bieżący węzeł XML.

IXmlSerializable.WriteXml(XmlWriter)

Jawna implementacja interfejsu, która zapisuje węzeł XML przy użyciu writer .

Dotyczy