XPathMessageFilter Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje zapytanie dotyczące dokumentu XML zdefiniowanego 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
- Implementuje
Uwagi
Obiekt XPathMessageFilter używa wyrażenia XPath do określenia, czy dokument XML zawiera określone elementy, atrybuty, tekst lub inne konstrukcje składniowe XML. Zazwyczaj aplikacja używa XPathMessageFilter elementu w punkcie końcowym do wykonywania zapytań dotyczących zawartości komunikatu PROTOKOŁU SOAP, a następnie wykonuje odpowiednią akcję na podstawie wyników tego zapytania. Na przykład proces kolejkowania może użyć zapytania XPath, aby sprawdzić element priorytetu znanego nagłówka, aby zdecydować, czy przenieść komunikat do przodu kolejki.
Język ścieżki XML (XPath) udostępnia język adresowania części dokumentu XML. Podstawowa konstrukcja składniowa w programie XPath to wyrażenie definiujące sposób przechodzenia przez logiczną strukturę dokumentu XML i adresu lub identyfikowanie typu danych XPath. W szczególności implementacje XPath oceniają wyrażenie względem struktury dokumentu XML w celu uzyskania jednego z czterech podstawowych typów danych XPath: ciągów, liczb, wartości logicznych i zestawów węzłów. Obsługują one również funkcje, które konwertują typ danych XPath na ciąg, liczbę lub typ danych logicznych. Jeśli metoda oczekuje jednego z tych trzech typów danych, wynik oceny wyrażenia jest niejawnie konwertowany. Należy pamiętać, że tych trzech typów danych nie można przekonwertować na typ zestawu węzłów. Język ścieżki XML jest w pełni opisany w specyfikacji W3C XML Path Language 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ą liczby testowe z wieloma cyframi znaczącymi, mogą zwracać nieprawidłowe wyniki z powodu problemów z precyzją zmiennoprzecinkowa. Aby uzyskać więcej informacji, zobacz Język ścieżki XML (XPath) w wersji 1.0, sekcja 3.5.
Konstruktory
| Nazwa | Opis |
|---|---|
| XPathMessageFilter() |
Inicjuje XPathMessageFilter nowe wystąpienie klasy, która pasuje do wszystkich dobrze sformułowanych dokumentów XML. |
| 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(String) |
Inicjuje nowe wystąpienie XPathMessageFilter klasy przy użyciu wyrażenia XPath w celu określenia kryteriów zapytania dla filtru. |
| XPathMessageFilter(XmlReader, XmlNamespaceManager) |
Inicjuje nowe wystąpienie XPathMessageFilter klasy, odczytując strumieniowo ścieżkę XPath z określonym czytnikiem XML i używając określonego menedżera przestrzeni nazw. |
| XPathMessageFilter(XmlReader, XsltContext) |
Inicjuje nowe wystąpienie XPathMessageFilter klasy, odczytując strumieniowo ścieżkę XPath z określonym czytnikiem XML i używając elementu XsltContext do rozpoznawania przestrzeni nazw, funkcji niestandardowych i zmiennych. |
| XPathMessageFilter(XmlReader) |
Inicjuje XPathMessageFilter nowe wystąpienie klasy, odczytując strumieniowo ścieżkę XPath z określonym czytnikiem XML. |
Właściwości
| Nazwa | Opis |
|---|---|
| Namespaces |
Pobiera menedżera, który rozpoznaje prefiksy przestrzeni nazw w wyrażeniu XPath definiującym filtr. |
| NodeQuota |
Pobiera lub ustawia maksymalną liczbę węzłów, które powinny być sprawdzane podczas oceny filtru. |
| XPath |
Pobiera wyrażenie XPath, które definiuje kryteria zapytania dla filtru. |
Metody
| Nazwa | Opis |
|---|---|
| CreateFilterTable<FilterData>() |
Tworzy obiekt XPathMessageFilterTable<TFilterData> , który ma określony typ skojarzonych z nim danych. |
| Equals(Object) |
Określa, czy określony obiekt jest równy bieżącemu obiektowi. (Odziedziczone po Object) |
| GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
| GetType() |
Pobiera Type bieżącego wystąpienia. (Odziedziczone po Object) |
| Match(Message) |
Sprawdza, 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 komunikat buforowany 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 za pośrednictwem określonego nawigatora XPath. |
| MemberwiseClone() |
Tworzy płytkią kopię bieżącego Object. (Odziedziczone po Object) |
| OnGetSchema() |
Pobiera schemat bieżącego dokumentu XML. |
| OnReadXml(XmlReader) |
Odczytuje bieżący węzeł XML. |
| OnWriteXml(XmlWriter) |
Zapisuje węzeł przy użyciu polecenia |
| ReadXPath(XmlReader, XmlNamespaceManager) |
Inicjuje bieżące wystąpienie obiektu za pomocą ścieżki XPathMessageFilter XPath uzyskanej z określonego czytnika XML przy użyciu określonego menedżera przestrzeni nazw. |
| StaticGetSchema(XmlSchemaSet) |
Pobiera typ schematu XML używanego do serializacji filtru XPath. |
| ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
| TrimToSize() |
Kompaktowa filtr XPath, który zwalnia całą nieużywaną pamięć. |
| WriteXPath(XmlWriter, IXmlNamespaceResolver) |
Serializuje filtr XPath do elementu XmlWriter. |
| WriteXPathTo(XmlWriter, String, String, String, Boolean) |
Zapisuje element XPath XML z określonym modułem zapisywania XML. |
Jawne implementacje interfejsu
| Nazwa | Opis |
|---|---|
| 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 polecenia |