XPathMessageFilter XPathMessageFilter XPathMessageFilter XPathMessageFilter Class

Definição

Representa uma consulta em um documento XML definida por uma expressão XPath 1.0.Represents a query on an XML document defined by an XPath 1.0 expression.

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
Herança
XPathMessageFilterXPathMessageFilterXPathMessageFilterXPathMessageFilter
Implementações

Comentários

Um XPathMessageFilter usa uma expressão XPath para determinar se um documento XML contém elementos específicos, atributos, texto ou outras construções sintáticas XML.An XPathMessageFilter uses an XPath expression to determine whether an XML document contains specific elements, attributes, text, or other XML syntactic constructs. Normalmente, um aplicativo usa um XPathMessageFilter em um ponto de extremidade para consultar o conteúdo de uma mensagem SOAP e, em seguida, executa a ação apropriada com base nos resultados dessa consulta.Typically, an application uses an XPathMessageFilter at an endpoint to query the contents of a SOAP message and then takes the appropriate action based on the results of that query. Um processo de enfileiramento, por exemplo, pode usar uma consulta XPath para verificar o elemento Priority de um cabeçalho conhecido para decidir se deve mover uma mensagem para a frente da fila.A queuing process, for example, may use an XPath query to check the priority element of a known header to decide whether to move a message to the front of the queue.

A linguagem de caminho XML (XPath) fornece uma linguagem para endereçar partes de um documento XML.The XML Path Language (XPath) provides a language for addressing parts of an XML document. A construção sintática primária no XPath é uma expressão que define como percorrer a estrutura lógica de um documento XML e tratar ou identificar um tipo de dados XPath.The primary syntactic construct in XPath is an expression that defines how to traverse the logical structure of an XML document and address or identify an XPath data type. Especificamente, as implementações XPath avaliam uma expressão em relação à estrutura de um documento XML para produzir um dos quatro tipos de dados XPath básicos: cadeias de caracteres, números, Boolianos e conjuntos de nós.Specifically, XPath implementations evaluate an expression against the structure of an XML document to yield one of the four basic XPath data types: strings, numbers, Booleans, and node sets. Eles também dão suporte a funções que convertem um tipo de dados XPath em uma cadeia de caracteres, número ou tipo de dados booliano.They also support functions that convert an XPath data type to a string, number, or Boolean data type. Se um método espera um desses três tipos de dados, o resultado da avaliação da expressão é convertido implicitamente.If a method expects one of these three data types, the result of the expression evaluation is implicitly converted. Observe que esses três tipos de dados não podem ser convertidos em um tipo de conjunto de nós.Note that these three data types cannot be converted to a node-set type. A linguagem de caminho XML está totalmente descrita na especificação W3C XML Path language 1,0.The XML Path language is fully described in the W3C XML Path Language 1.0 specification.

Números em expressões XPath são expressos como valores de precisão dupla de 64 bits.Numbers in XPath expressions are expressed as double-precision 64-bit values. Portanto, as expressões XPath que envolvem números de teste com muitos dígitos significativos podem retornar resultados incorretos devido a problemas de precisão de ponto flutuante.Therefore XPath expressions that involve testing numbers with many significant digits can return incorrect results due to floating point precision issues. Para obter mais informações, consulte linguagem de caminho XML (XPath) versão 1,0, seção 3,5.For more information, see XML Path Language (XPath) Version 1.0, section 3.5.

Construtores

XPathMessageFilter() XPathMessageFilter() XPathMessageFilter() XPathMessageFilter()

Inicializa uma nova instância da classe XPathMessageFilter que corresponde a todos os documentos XML bem formados.Initializes a new instance of the XPathMessageFilter class that matches all well-formed XML documents.

XPathMessageFilter(String) XPathMessageFilter(String) XPathMessageFilter(String) XPathMessageFilter(String)

Inicializa uma nova instância da classe XPathMessageFilter usando a expressão XPath para especificar os critérios de consulta para o filtro.Initializes a new instance of the XPathMessageFilter class using an XPath expression to specify query criteria for the filter.

XPathMessageFilter(String, XmlNamespaceManager) XPathMessageFilter(String, XmlNamespaceManager) XPathMessageFilter(String, XmlNamespaceManager) XPathMessageFilter(String, XmlNamespaceManager)

Inicializa uma nova instância da classe XPathMessageFilter usando a expressão XPath e o gerenciador de namespace especificados.Initializes a new instance of the XPathMessageFilter class using the specified XPath expression and namespace manager.

XPathMessageFilter(String, XsltContext) XPathMessageFilter(String, XsltContext) XPathMessageFilter(String, XsltContext) XPathMessageFilter(String, XsltContext)

Inicializa uma nova instância da classe XPathMessageFilter usando a expressão XPath e o XsltContext especificados.Initializes a new instance of the XPathMessageFilter class using a specified XPath expression and XsltContext.

XPathMessageFilter(XmlReader) XPathMessageFilter(XmlReader) XPathMessageFilter(XmlReader) XPathMessageFilter(XmlReader)

Inicializa uma nova instância da classe XPathMessageFilter lendo um XPath transmitido com o leitor de XML especificado.Initializes a new instance of the XPathMessageFilter class by reading a streamed XPath with the specified XML reader.

XPathMessageFilter(XmlReader, XmlNamespaceManager) XPathMessageFilter(XmlReader, XmlNamespaceManager) XPathMessageFilter(XmlReader, XmlNamespaceManager) XPathMessageFilter(XmlReader, XmlNamespaceManager)

Inicializa uma nova instância da classe XPathMessageFilter lendo um XPath transmitido com um leitor de XML especificado e usando o gerenciador de namespace especificado.Initializes a new instance of the XPathMessageFilter class by reading in a streamed XPath with a specified XML reader and using the specified namespace manager.

XPathMessageFilter(XmlReader, XsltContext) XPathMessageFilter(XmlReader, XsltContext) XPathMessageFilter(XmlReader, XsltContext) XPathMessageFilter(XmlReader, XsltContext)

Inicializa uma nova instância da classe XPathMessageFilter lendo um XPath transmitido com um leitor de XML especificado e usando o XsltContext para resolver namespaces, funções personalizadas e variáveis.Initializes a new instance of the XPathMessageFilter class by reading a streamed XPath with a specified XML reader and using the XsltContext to resolve namespaces, custom functions, and variables.

Propriedades

Namespaces Namespaces Namespaces Namespaces

Obtém o gerenciador que resolve prefixos de namespace na expressão XPath que define o filtro.Gets the manager that resolves namespace prefixes in the XPath expression that defines the filter.

NodeQuota NodeQuota NodeQuota NodeQuota

Obtém ou define o número máximo de nós que devem ser pesquisados durante a avaliação do filtro.Gets or sets the maximum number of nodes that should be looked at during filter evaluation.

XPath XPath XPath XPath

Obtém a expressão XPath que define os critérios de consulta para o filtro.Gets the XPath expression that defines the query criteria for the filter.

Métodos

CreateFilterTable<FilterData>() CreateFilterTable<FilterData>() CreateFilterTable<FilterData>() CreateFilterTable<FilterData>()

Cria um XPathMessageFilterTable<TFilterData> que tem um tipo especificado de dados associado a ele.Creates an XPathMessageFilterTable<TFilterData> that has a specified type of data associated with it.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Inherited from Object)
Match(Message) Match(Message) Match(Message) Match(Message)

Testa se uma mensagem especificada satisfaz os critérios do filtro XPath.Tests whether a specified message satisfies the criteria of the XPath filter. Este formulário não tem permissão para acessar o corpo da mensagem.This form is not allowed to access the body of the message.

Match(MessageBuffer) Match(MessageBuffer) Match(MessageBuffer) Match(MessageBuffer)

Determina se uma mensagem armazenada em buffer satisfaz os critérios de consulta do filtro XPath.Determines whether a buffered message satisfies the query criteria of the XPath filter.

Match(SeekableXPathNavigator) Match(SeekableXPathNavigator) Match(SeekableXPathNavigator) Match(SeekableXPathNavigator)

Determina se o documento XML fornecido pelo navegador XPath otimizado especificado satisfaz os critérios de consulta do filtro XPath.Determines whether the XML document provided by the specified optimized XPath navigator satisfies the query criteria of the XPath filter.

Match(XPathNavigator) Match(XPathNavigator) Match(XPathNavigator) Match(XPathNavigator)

Avalia o filtro no navegador XPath especificado.Evaluates the filter over the specified XPath navigator.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Inherited from Object)
OnGetSchema() OnGetSchema() OnGetSchema() OnGetSchema()

Obtém o esquema para o documento XML atual.Gets the schema for the current XML document.

OnReadXml(XmlReader) OnReadXml(XmlReader) OnReadXml(XmlReader) OnReadXml(XmlReader)

Lê o nó XML atual.Reads the current XML node.

OnWriteXml(XmlWriter) OnWriteXml(XmlWriter) OnWriteXml(XmlWriter) OnWriteXml(XmlWriter)

Grava um nó usando writer.Writes a node using writer.

ReadXPath(XmlReader, XmlNamespaceManager) ReadXPath(XmlReader, XmlNamespaceManager) ReadXPath(XmlReader, XmlNamespaceManager) ReadXPath(XmlReader, XmlNamespaceManager)

Inicializa a instância atual do XPathMessageFilter com um XPath obtido de um leitor de XML especificado usando um gerenciador de namespace especificado.Initializes the current instance of the XPathMessageFilter with an XPath obtained from a specified XML reader using a specified namespace manager.

StaticGetSchema(XmlSchemaSet) StaticGetSchema(XmlSchemaSet) StaticGetSchema(XmlSchemaSet) StaticGetSchema(XmlSchemaSet)

Obtém o tipo de esquema XML usado para serializar o filtro XPath.Gets the type of XML schema used to serialize the XPath filter.

ToString() ToString() ToString() ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Inherited from Object)
TrimToSize() TrimToSize() TrimToSize() TrimToSize()

Compacta o filtro XPath, que libera toda a memória não usada.Compacts the XPath filter, which releases all unused memory.

WriteXPath(XmlWriter, IXmlNamespaceResolver) WriteXPath(XmlWriter, IXmlNamespaceResolver) WriteXPath(XmlWriter, IXmlNamespaceResolver) WriteXPath(XmlWriter, IXmlNamespaceResolver)

Serializa o filtro XPath para um XmlWriter.Serializes the XPath filter to an XmlWriter.

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

Grava o elemento XPath XML com um gravador XML especificado.Writes the XML XPath element with a specified XML writer.

Implantações explícitas de interface

IXmlSerializable.GetSchema() IXmlSerializable.GetSchema() IXmlSerializable.GetSchema() IXmlSerializable.GetSchema()

Uma implementação explícita da interface que obtém o esquema atual.An explicit interface implementation that gets the current schema.

IXmlSerializable.ReadXml(XmlReader) IXmlSerializable.ReadXml(XmlReader) IXmlSerializable.ReadXml(XmlReader) IXmlSerializable.ReadXml(XmlReader)

Uma implementação explícita da interface que lê o nó XML atual.An explicit interface implementation that reads the current XML node.

IXmlSerializable.WriteXml(XmlWriter) IXmlSerializable.WriteXml(XmlWriter) IXmlSerializable.WriteXml(XmlWriter) IXmlSerializable.WriteXml(XmlWriter)

Uma implementação explícita da interface que grava um nó XML usando writer.An explicit interface implementation that writes an XML node using writer.

Aplica-se a