XPathMessageFilter Sınıf

Tanım

XPath 1.0 ifadesi tarafından tanımlanan XML belgesinde sorguyu temsil eder.

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
Devralma
XPathMessageFilter
Uygulamalar

Açıklamalar

bir XPathMessageFilter XML belgesinin belirli öğeler, öznitelikler, metin veya diğer XML söz dizimsel yapıları içerip içermediğini belirlemek için XPath ifadesi kullanır. Genellikle, bir uygulama XPathMessageFilter bir SOAP iletisinin içeriğini sorgulamak için uç noktada kullanır ve ardından bu sorgunun sonuçlarına göre uygun eylemi uygular. Örneğin bir kuyruğa alma işlemi, bir iletiyi kuyruğun önüne taşıyıp taşımamaya karar vermek üzere bilinen üst bilginin öncelik öğesini denetlemek için XPath sorgusu kullanabilir.

XML Yol Dili (XPath), XML belgesinin bölümlerini ele almak için bir dil sağlar. XPath'teki birincil söz dizimsel yapı, XML belgesinin ve adresinin mantıksal yapısında dolaşmayı veya XPath veri türünü tanımlamayı tanımlayan bir ifadedir. Özellikle, XPath uygulamaları bir ifadeyi XML belgesinin yapısına göre değerlendirerek dört temel XPath veri türünden birini oluşturur: dizeler, sayılar, Booleanlar ve düğüm kümeleri. Ayrıca XPath veri türünü dize, sayı veya Boole veri türüne dönüştüren işlevleri de destekler. Bir yöntem bu üç veri türünden birini bekliyorsa, ifade değerlendirmesinin sonucu örtük olarak dönüştürülür. Bu üç veri türünün düğüm kümesi türüne dönüştürülemeyeceğini unutmayın. XML Yolu dili, W3C XML Yol Dili 1.0 belirtiminde tam olarak açıklanmıştır.

XPath ifadelerindeki sayılar çift duyarlıklı 64 bit değerler olarak ifade edilir. Bu nedenle, çok sayıda anlamlı basamağı olan sayıları test etmeyi içeren XPath ifadeleri kayan nokta duyarlılığı sorunları nedeniyle yanlış sonuçlar döndürebilir. Daha fazla bilgi için bkz. XML Yol Dili (XPath) Sürüm 1.0, bölüm 3.5.

Oluşturucular

XPathMessageFilter()

Sınıfının tüm iyi biçimlendirilmiş XML belgeleriyle XPathMessageFilter eşleşen yeni bir örneğini başlatır.

XPathMessageFilter(String)

Filtre için XPathMessageFilter sorgu ölçütlerini belirtmek üzere bir XPath ifadesi kullanarak sınıfının yeni bir örneğini başlatır.

XPathMessageFilter(String, XmlNamespaceManager)

Belirtilen XPath ifadesini ve ad alanı yöneticisini XPathMessageFilter kullanarak sınıfının yeni bir örneğini başlatır.

XPathMessageFilter(String, XsltContext)

Belirtilen XPath ifadesi ve XsltContextkullanarak sınıfının yeni bir örneğini XPathMessageFilter başlatır.

XPathMessageFilter(XmlReader)

Belirtilen XML okuyucusu ile akışı yapılan XPathMessageFilter XPath'i okuyarak sınıfının yeni bir örneğini başlatır.

XPathMessageFilter(XmlReader, XmlNamespaceManager)

Akışı yapılan bir XPath'te belirtilen XML okuyucusuyla okuyarak ve belirtilen ad alanı yöneticisini kullanarak sınıfının yeni bir örneğini XPathMessageFilter başlatır.

XPathMessageFilter(XmlReader, XsltContext)

Belirli bir XML okuyucusu ile akışa alınan XPath'i okuyarak ve ad alanlarını, özel işlevleri ve değişkenleri çözümlemek için kullanarak XsltContext sınıfının yeni bir örneğini XPathMessageFilter başlatır.

Özellikler

Namespaces

Filtreyi tanımlayan XPath ifadesindeki ad alanı ön eklerini çözümleyen yöneticiyi alır.

NodeQuota

Filtre değerlendirmesi sırasında bakılması gereken en fazla düğüm sayısını alır veya ayarlar.

XPath

Filtre için sorgu ölçütlerini tanımlayan XPath ifadesini alır.

Yöntemler

CreateFilterTable<FilterData>()

Kendisiyle ilişkilendirilmiş belirli bir veri türüne sahip olan bir XPathMessageFilterTable<TFilterData> oluşturur.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
Match(Message)

Belirtilen iletinin XPath filtresinin ölçütlerini karşılayıp karşılamadığını test eder. Bu formun iletinin gövdesine erişmesine izin verilmiyor.

Match(MessageBuffer)

Arabelleğe alınan iletinin XPath filtresinin sorgu ölçütlerini karşılayıp karşılamadığını belirler.

Match(SeekableXPathNavigator)

Belirtilen iyileştirilmiş XPath gezgini tarafından sağlanan XML belgesinin XPath filtresinin sorgu ölçütlerini karşılayıp karşılamadığını belirler.

Match(XPathNavigator)

Filtreyi belirtilen XPath gezgini üzerinde değerlendirir.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
OnGetSchema()

Geçerli XML belgesinin şemasını alır.

OnReadXml(XmlReader)

Geçerli XML düğümünü okur.

OnWriteXml(XmlWriter)

kullanarak writerbir düğüm yazar.

ReadXPath(XmlReader, XmlNamespaceManager)

Belirtilen ad alanı yöneticisini kullanarak belirtilen XML okuyucudan alınan bir XPath ile geçerli örneğini XPathMessageFilter başlatır.

StaticGetSchema(XmlSchemaSet)

XPath filtresini seri hale getirmek için kullanılan XML şemasının türünü alır.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)
TrimToSize()

Kullanılmayan tüm belleği serbest bırakan XPath filtresini sıkıştırır.

WriteXPath(XmlWriter, IXmlNamespaceResolver)

XPath filtresini bir XmlWriterolarak serileştirir.

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

XML XPath öğesini belirtilen XML yazıcısıyla yazar.

Belirtik Arabirim Kullanımları

IXmlSerializable.GetSchema()

Geçerli şemayı alan açık bir arabirim uygulaması.

IXmlSerializable.ReadXml(XmlReader)

Geçerli XML düğümünü okuyan açık bir arabirim uygulaması.

IXmlSerializable.WriteXml(XmlWriter)

kullanarak writerbir XML düğümü yazan açık bir arabirim uygulaması.

Şunlara uygulanır