XPathMessageFilter Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa uma consulta em um documento XML definido por uma expressão 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
- Herança
- Implementações
Comentários
Um XPathMessageFilter usa uma expressão XPath para determinar se um documento XML contém elementos, atributos, texto ou outros constructos sintacticos XML específicos. Normalmente, um aplicativo usa um XPathMessageFilter em um ponto de extremidade para consultar o conteúdo de uma mensagem SOAP e então toma a ação apropriada com base nos resultados da consulta. Um processo de enfileiramento, por exemplo, pode usar uma consulta XPath para verificar o elemento de prioridade de um cabeçalho conhecido para decidir se deseja mover uma mensagem para a frente da fila.
A XPath (Linguagem de Caminho XML) fornece uma linguagem para endereçar partes de um documento XML. A construção sintactica primária no XPath é uma expressão que define como percorrer a estrutura lógica de um documento XML e endereço ou identificar um tipo de dados XPath. 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. Eles também dão suporte a funções que convertem um tipo de dados XPath em um tipo de dados de cadeia de caracteres, número ou booliano. Se um método espera um desses três tipos de dados, o resultado da avaliação da expressão é convertido implicitamente. Observe que esses três tipos de dados não podem ser convertidos em um tipo de conjunto de nós. A linguagem caminho XML é totalmente descrita na especificação W3C XML Path Language 1.0.
Os números em expressões XPath são expressos como valores de precisão dupla de 64 bits. Portanto, 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. Para obter mais informações, consulte XPath (Linguagem de Caminho XML) versão 1.0, seção 3.5.
Construtores
| Nome | Description |
|---|---|
| XPathMessageFilter() |
Inicializa uma nova instância da classe que corresponde a XPathMessageFilter todos os documentos XML bem formados. |
| XPathMessageFilter(String, XmlNamespaceManager) |
Inicializa uma nova instância da XPathMessageFilter classe usando a expressão XPath especificada e o gerenciador de namespaces. |
| XPathMessageFilter(String, XsltContext) |
Inicializa uma nova instância da XPathMessageFilter classe usando uma expressão XPath especificada e XsltContext. |
| XPathMessageFilter(String) |
Inicializa uma nova instância da XPathMessageFilter classe usando uma expressão XPath para especificar critérios de consulta para o filtro. |
| XPathMessageFilter(XmlReader, XmlNamespaceManager) |
Inicializa uma nova instância da XPathMessageFilter classe lendo em um XPath transmitido com um leitor XML especificado e usando o gerenciador de namespace especificado. |
| XPathMessageFilter(XmlReader, XsltContext) |
Inicializa uma nova instância da XPathMessageFilter classe lendo um XPath transmitido com um leitor XML especificado e usando o XsltContext para resolver namespaces, funções personalizadas e variáveis. |
| XPathMessageFilter(XmlReader) |
Inicializa uma nova instância da XPathMessageFilter classe lendo um XPath transmitido com o leitor XML especificado. |
Propriedades
| Nome | Description |
|---|---|
| Namespaces |
Obtém o gerenciador que resolve prefixos de namespace na expressão XPath que define o filtro. |
| NodeQuota |
Obtém ou define o número máximo de nós que devem ser examinados durante a avaliação do filtro. |
| XPath |
Obtém a expressão XPath que define os critérios de consulta para o filtro. |
Métodos
| Nome | Description |
|---|---|
| CreateFilterTable<FilterData>() |
Cria um XPathMessageFilterTable<TFilterData> que tem um tipo especificado de dados associados a ele. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| Match(Message) |
Testa se uma mensagem especificada atende aos critérios do filtro XPath. Este formulário não tem permissão para acessar o corpo da mensagem. |
| Match(MessageBuffer) |
Determina se uma mensagem em buffer atende aos critérios de consulta do filtro XPath. |
| Match(SeekableXPathNavigator) |
Determina se o documento XML fornecido pelo navegador XPath otimizado especificado atende aos critérios de consulta do filtro XPath. |
| Match(XPathNavigator) |
Avalia o filtro sobre o navegador XPath especificado. |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
| OnGetSchema() |
Obtém o esquema do documento XML atual. |
| OnReadXml(XmlReader) |
Lê o nó XML atual. |
| OnWriteXml(XmlWriter) |
Grava um nó usando |
| ReadXPath(XmlReader, XmlNamespaceManager) |
Inicializa a instância atual do XPathMessageFilter com um XPath obtido de um leitor XML especificado usando um gerenciador de namespace especificado. |
| StaticGetSchema(XmlSchemaSet) |
Obtém o tipo de esquema XML usado para serializar o filtro XPath. |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
| TrimToSize() |
Compacta o filtro XPath, que libera toda a memória não utilizado. |
| WriteXPath(XmlWriter, IXmlNamespaceResolver) |
Serializa o filtro XPath para um XmlWriter. |
| WriteXPathTo(XmlWriter, String, String, String, Boolean) |
Grava o elemento XPath XML com um gravador XML especificado. |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IXmlSerializable.GetSchema() |
Uma implementação de interface explícita que obtém o esquema atual. |
| IXmlSerializable.ReadXml(XmlReader) |
Uma implementação de interface explícita que lê o nó XML atual. |
| IXmlSerializable.WriteXml(XmlWriter) |
Uma implementação de interface explícita que grava um nó XML usando |