XmlNodeReader Classe
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 um leitor que fornece acesso rápido não armazenado em cache e somente de encaminhamento aos dados XML em um XmlNode.
public ref class XmlNodeReader : System::Xml::XmlReader, System::Xml::IXmlNamespaceResolver
public ref class XmlNodeReader : System::Xml::XmlReader
public class XmlNodeReader : System.Xml.XmlReader, System.Xml.IXmlNamespaceResolver
public class XmlNodeReader : System.Xml.XmlReader
type XmlNodeReader = class
inherit XmlReader
interface IXmlNamespaceResolver
type XmlNodeReader = class
inherit XmlReader
Public Class XmlNodeReader
Inherits XmlReader
Implements IXmlNamespaceResolver
Public Class XmlNodeReader
Inherits XmlReader
- Herança
- Implementações
No exemplo a seguir, um arquivo XML é carregado em um documento XML e alterado. O documento XML é passado para XmlNodeReader, que é então passado para o método de XmlReader.Create . Quando o leitor validando analisa o arquivo, pode validar as alterações feitas no arquivo XML.
using System;
using System.Xml;
using System.Xml.Schema;
using System.IO;
public class Sample {
public static void Main() {
// Create and load the XML document.
XmlDocument doc = new XmlDocument();
doc.Load("booksSchema.xml");
// Make changes to the document.
XmlElement book = (XmlElement) doc.DocumentElement.FirstChild;
book.SetAttribute("publisher", "Worldwide Publishing");
// Create an XmlNodeReader using the XML document.
XmlNodeReader nodeReader = new XmlNodeReader(doc);
// Set the validation settings on the XmlReaderSettings object.
XmlReaderSettings settings = new XmlReaderSettings();
settings.ValidationType = ValidationType.Schema;
settings.Schemas.Add("urn:bookstore-schema", "books.xsd");
settings.ValidationEventHandler += new ValidationEventHandler (ValidationCallBack);
// Create a validating reader that wraps the XmlNodeReader object.
XmlReader reader = XmlReader.Create(nodeReader, settings);
// Parse the XML file.
while (reader.Read());
}
// Display any validation errors.
private static void ValidationCallBack(object sender, ValidationEventArgs e) {
Console.WriteLine("Validation Error: {0}", e.Message);
}
}
Imports System.Xml
Imports System.Xml.Schema
Imports System.IO
public class Sample
public shared sub Main()
' Create and load the XML document.
Dim doc as XmlDocument = new XmlDocument()
doc.Load("booksSchema.xml")
' Make changes to the document.
Dim book as XmlElement
book = CType(doc.DocumentElement.FirstChild, XmlElement)
book.SetAttribute("publisher", "Worldwide Publishing")
' Create an XmlNodeReader using the XML document.
Dim nodeReader as XmlNodeReader = new XmlNodeReader(doc)
' Set the validation settings on the XmlReaderSettings object.
Dim settings as XmlReaderSettings = new XmlReaderSettings()
settings.ValidationType = ValidationType.Schema
settings.Schemas.Add("urn:bookstore-schema", "books.xsd")
AddHandler settings.ValidationEventHandler, AddressOf ValidationCallBack
' Create a validating reader that wraps the XmlNodeReader object.
Dim reader as XmlReader = XmlReader.Create(nodeReader,settings)
' Parse the XML file.
while (reader.Read())
end while
end sub
' Display any validation errors.
private shared sub ValidationCallBack(sender as object, e as ValidationEventArgs)
Console.WriteLine("Validation Error: {0}", e.Message)
end sub
end class
Os dois arquivos XML a seguir são usados como entrada.
<?xml version='1.0'?>
<bookstore xmlns="urn:bookstore-schema">
<book genre="autobiography">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
</bookstore>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="urn:bookstore-schema"
elementFormDefault="qualified"
targetNamespace="urn:bookstore-schema">
<xsd:element name="bookstore" type="bookstoreType"/>
<xsd:complexType name="bookstoreType">
<xsd:sequence maxOccurs="unbounded">
<xsd:element name="book" type="bookType"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="bookType">
<xsd:sequence>
<xsd:element name="title" type="xsd:string"/>
<xsd:element name="author" type="authorName"/>
<xsd:element name="price" type="xsd:decimal"/>
</xsd:sequence>
<xsd:attribute name="genre" type="xsd:string"/>
</xsd:complexType>
<xsd:complexType name="authorName">
<xsd:sequence>
<xsd:element name="first-name" type="xsd:string"/>
<xsd:element name="last-name" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
Saída:
Erro de validação: O atributo “editor” não está declarado.
Nota
Em vez de usar o XmlNodeReader, recomendamos que você crie XmlReader instâncias usando a XmlReaderSettings classe e o Create método . Isso permite que você aproveite a verificação de conformidade e a conformidade com a recomendação XML 1.0.
O XmlNodeReader
tem a capacidade de ler uma subárvore XML DOM. Essa classe não dá suporte à DTD (definição de tipo de documento) nem à validação de esquema. No entanto, você pode criar um XmlReader objeto que envolve o XmlNodeReader objeto para validar os dados armazenados no XmlNodeReader objeto, conforme mostrado na seção Exemplos.
Xml |
Cria uma instância da classe |
Attribute |
Obtém o número de atributos no nó atual. |
BaseURI |
Obtém o URI base do nó atual. |
Can |
Obtém um valor que indica se o XmlNodeReader implementa os métodos de leitura de conteúdo binário. |
Can |
Obtém um valor que indica se o XmlReader implementa os métodos de leitura de conteúdo binário. (Herdado de XmlReader) |
Can |
Obtém um valor que indica se o XmlReader implementa o método ReadValueChunk(Char[], Int32, Int32). (Herdado de XmlReader) |
Can |
Obtém um valor que indica se este leitor pode analisar e resolver entidades. |
Depth |
Obtém a profundidade do nó atual no documento XML. |
EOF |
Obtém um valor que indica se o leitor está posicionado no final do fluxo. |
Has |
Obtém um valor que indica se o nó atual tem atributos. |
Has |
Obtém um valor que indica se o nó atual pode ter um Value. |
Is |
Obtém um valor que indica se o nó atual é um atributo que foi gerado com base no valor padrão definido na DTD (definição de tipo de documento) ou no esquema. |
Is |
Obtém um valor que indica se o nó atual é um elemento vazio (por exemplo, |
Item[Int32] |
Obtém o valor do atributo com o índice especificado. |
Item[Int32] |
Quando substituído em uma classe derivada, obtém o valor do atributo com o índice especificado. (Herdado de XmlReader) |
Item[String, String] |
Obtém o valor do atributo com o nome do local e o URI de namespace especificados. |
Item[String, String] |
Quando substituído em uma classe derivada, obtém o valor do atributo com o LocalName e o NamespaceURI especificados. (Herdado de XmlReader) |
Item[String] |
Quando substituído em uma classe derivada, obtém o valor do atributo com o nome especificado. |
Item[String] |
Quando substituído em uma classe derivada, obtém o valor do atributo com o Name especificado. (Herdado de XmlReader) |
Local |
Obtém o nome local do nó atual. |
Name |
Obtém o nome qualificado do nó atual. |
NamespaceURI |
Obtém o URI de namespace (conforme definido na especificação de Namespace do W3C) do nó no qual o leitor está posicionado. |
Name |
Obtém o XmlNameTable associado à essa implementação. |
Node |
Obtém o tipo do nó atual. |
Prefix |
Obtém o prefixo de namespace associado ao nó atual. |
Quote |
Obtém o caractere de aspas usado para circunscrever o valor de um nó de atributo. |
Quote |
Quando substituído em uma classe derivada, obtém o caractere de aspas usado para circunscrever o valor de um nó de atributo. (Herdado de XmlReader) |
Read |
Obtém o estado do leitor. |
Schema |
Obtém as informações de esquema que foram atribuídas ao nó atual. |
Schema |
Obtém as informações de esquema que foram atribuídas ao nó atual como resultado da validação de esquema. (Herdado de XmlReader) |
Settings |
Obtém o objeto XmlReaderSettings usado para criar essa instância XmlReader. (Herdado de XmlReader) |
Value |
Obtém o valor de texto do nó atual. |
Value |
Obtém o tipo CLR (Common Language Runtime) para o nó atual. (Herdado de XmlReader) |
Xml |
Obtém o escopo de |
Xml |
Obtém o escopo de |
Close() |
Altera o ReadState para |
Dispose() |
Libera todos os recursos usados pela instância atual da classe XmlReader. (Herdado de XmlReader) |
Dispose(Boolean) |
Libera os recursos não gerenciados usados pelo XmlReader e opcionalmente libera os recursos gerenciados. (Herdado de XmlReader) |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
Get |
Obtém o valor do atributo com o índice especificado. |
Get |
Obtém o valor do atributo com o nome especificado. |
Get |
Obtém o valor do atributo com o nome do local e o URI de namespace especificados. |
Get |
Serve como a função de hash padrão. (Herdado de Object) |
Get |
Obtém o Type da instância atual. (Herdado de Object) |
Get |
Obtém o valor do nó atual de forma assíncrona. (Herdado de XmlReader) |
Is |
Chama MoveToContent() e testa se o nó de conteúdo atual é uma marca de início ou uma marca de elemento vazia. (Herdado de XmlReader) |
Is |
Chama MoveToContent() e testa se o nó de conteúdo atual é uma marca de início ou uma marca de elemento vazio e se a propriedade Name que o elemento encontrou corresponde ao argumento fornecido. (Herdado de XmlReader) |
Is |
Chama MoveToContent() e testa se o nó de conteúdo atual é uma marca de início ou uma marca de elemento vazio e, se as propriedades LocalName e NamespaceURI do elemento encontrado correspondem às cadeias de caracteres fornecidas. (Herdado de XmlReader) |
Lookup |
Resolve um prefixo de namespace no escopo do elemento atual. |
Memberwise |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
Move |
Move para o atributo com o índice especificado. |
Move |
Move para o atributo com o nome especificado. |
Move |
Move para o atributo com o nome local e o URI de namespace especificados. |
Move |
Verifica se o nó atual é um nó de conteúdo (texto sem espaço em branco, |
Move |
Verifica de forma assíncrona se o nó atual é um nó de conteúdo. Se o nó não for um nó de conteúdo, o leitor avançará para o próximo nó de conteúdo ou para o final do arquivo. (Herdado de XmlReader) |
Move |
Move para o elemento que contém o nó de atributo atual. |
Move |
Move para o primeiro atributo. |
Move |
Move para o próximo atributo. |
Read() |
Lê o próximo nó do fluxo. |
Read |
Lê assincronamente o próximo nó do fluxo. (Herdado de XmlReader) |
Read |
Analisa o valor do atributo em um ou mais nós |
Read |
Lê o conteúdo como um objeto do tipo especificado. (Herdado de XmlReader) |
Read |
Lê de forma assíncrona o conteúdo como um objeto do tipo especificado. (Herdado de XmlReader) |
Read |
Lê o conteúdo e retorna os bytes binários decodificados de Base64. |
Read |
Lê o conteúdo e retorna os bytes binários decodificados de Base64. (Herdado de XmlReader) |
Read |
Lê de forma assíncrona o conteúdo e retorna que os bytes binários decodificados de Base64. (Herdado de XmlReader) |
Read |
Lê o conteúdo e retorna os bytes binários decodificados BinHex. |
Read |
Lê o conteúdo e retorna os bytes binários decodificados |
Read |
Lê de forma assíncrona o conteúdo e retorna os bytes binários decodificados |
Read |
Lê o conteúdo de texto na posição atual como um |
Read |
Lê o conteúdo de texto na posição atual como um objeto DateTime. (Herdado de XmlReader) |
Read |
Lê o conteúdo de texto na posição atual como um objeto DateTimeOffset. (Herdado de XmlReader) |
Read |
Lê o conteúdo de texto na posição atual como um objeto Decimal. (Herdado de XmlReader) |
Read |
Lê o conteúdo de texto na posição atual como um número de ponto flutuante de precisão dupla. (Herdado de XmlReader) |
Read |
Lê o conteúdo de texto na posição atual como um número de ponto flutuante de precisão simples. (Herdado de XmlReader) |
Read |
Lê o conteúdo de texto na posição atual como um inteiro com sinal de 32 bits. (Herdado de XmlReader) |
Read |
Lê o conteúdo de texto na posição atual como um inteiro com sinal de 64 bits. (Herdado de XmlReader) |
Read |
Lê o conteúdo do texto na posição atual como um Object. (Herdado de XmlReader) |
Read |
Lê de forma assíncrona o conteúdo do texto na posição atual como um Object. (Herdado de XmlReader) |
Read |
Lê o conteúdo de texto na posição atual como um objeto String. (Herdado de XmlReader) |
Read |
Lê de forma assíncrona o conteúdo do texto na posição atual como um objeto String. (Herdado de XmlReader) |
Read |
Lê o conteúdo do elemento como o tipo solicitado. (Herdado de XmlReader) |
Read |
Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual e, em seguida, lê o conteúdo do elemento atual como o tipo solicitado. (Herdado de XmlReader) |
Read |
Lê de forma assíncrona o conteúdo do elemento como o tipo solicitado. (Herdado de XmlReader) |
Read |
Lê o elemento e decodifica o conteúdo de Base64. |
Read |
Lê o elemento e decodifica o conteúdo de |
Read |
Lê de forma assíncrona o elemento e decodifica o conteúdo |
Read |
Lê o elemento e decodifica o conteúdo BinHex. |
Read |
Lê o elemento e decodifica o conteúdo de |
Read |
Lê de forma assíncrona o elemento e decodifica o conteúdo |
Read |
Lê o elemento atual e retorna o conteúdo como um objeto Boolean. (Herdado de XmlReader) |
Read |
Verifica se o nome do local especificado e o URI de namespace correspondem àqueles do elemento atual, em seguida, lê o elemento atual e retorna o conteúdo como um objeto Boolean. (Herdado de XmlReader) |
Read |
Lê o elemento atual e retorna o conteúdo como um objeto DateTime. (Herdado de XmlReader) |
Read |
Verifica se o nome do local especificado e o URI de namespace correspondem àqueles do elemento atual, em seguida, lê o elemento atual e retorna o conteúdo como um objeto DateTime. (Herdado de XmlReader) |
Read |
Lê o elemento atual e retorna o conteúdo como um objeto Decimal. (Herdado de XmlReader) |
Read |
Verifica se o nome do local especificado e o URI de namespace correspondem àqueles do elemento atual, em seguida, lê o elemento atual e retorna o conteúdo como um objeto Decimal. (Herdado de XmlReader) |
Read |
Lê o elemento atual e retorna o conteúdo como um número de ponto flutuante de precisão dupla. (Herdado de XmlReader) |
Read |
Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual, lê o elemento atual e retorna o conteúdo como um número de ponto flutuante de precisão dupla. (Herdado de XmlReader) |
Read |
Lê o elemento atual e retorna o conteúdo como um número de ponto flutuante de precisão simples. (Herdado de XmlReader) |
Read |
Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual, lê o elemento atual e retorna o conteúdo como um número de ponto flutuante de precisão simples. (Herdado de XmlReader) |
Read |
Lê o elemento atual e retorna o conteúdo como um inteiro com sinal de 32 bits. (Herdado de XmlReader) |
Read |
Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual, lê o elemento atual e retorna o conteúdo como um inteiro com sinal de 32 bits. (Herdado de XmlReader) |
Read |
Lê o elemento atual e retorna o conteúdo como um inteiro com sinal de 64 bits. (Herdado de XmlReader) |
Read |
Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual, lê o elemento atual e retorna o conteúdo como um inteiro com sinal de 64 bits. (Herdado de XmlReader) |
Read |
Lê o elemento atual e retorna os conteúdos como um Object. (Herdado de XmlReader) |
Read |
Verifica se o nome local e o URI de namespace especificados são iguais aos do elemento atual, lê o elemento atual e retorna o conteúdo como um Object. (Herdado de XmlReader) |
Read |
Lê de forma assíncrona o elemento atual e retorna o conteúdo como um Object. (Herdado de XmlReader) |
Read |
Lê o elemento atual e retorna o conteúdo como um objeto String. (Herdado de XmlReader) |
Read |
Verifica se o nome do local especificado e o URI de namespace correspondem àqueles do elemento atual, em seguida, lê o elemento atual e retorna o conteúdo como um objeto String. (Herdado de XmlReader) |
Read |
Lê de forma assíncrona o elemento atual e retorna o conteúdo como um objeto String. (Herdado de XmlReader) |
Read |
Lê um elemento somente texto. No entanto, é recomendável que você use o método ReadElementContentAsString() em vez disso, porque ele fornece uma maneira mais simples de lidar com essa operação. (Herdado de XmlReader) |
Read |
Verifica se a propriedade Name do elemento encontrado corresponde à cadeia de caracteres fornecida antes de ler um elemento somente texto. No entanto, é recomendável que você use o método ReadElementContentAsString() em vez disso, porque ele fornece uma maneira mais simples de lidar com essa operação. (Herdado de XmlReader) |
Read |
Verifica se as propriedades LocalName e NamespaceURI do elemento encontrado correspondem às cadeias de caracteres fornecidas antes de ler um elemento somente de texto. No entanto, é recomendável que você use o método ReadElementContentAsString(String, String) em vez disso, porque ele fornece uma maneira mais simples de lidar com essa operação. (Herdado de XmlReader) |
Read |
Verifica se o nó de conteúdo atual é uma marca de fim e avança o leitor para o próximo nó. (Herdado de XmlReader) |
Read |
Quando substituído em uma classe derivada, lê todo o conteúdo, incluindo a marcação, como uma cadeia de caracteres. (Herdado de XmlReader) |
Read |
Lê de forma assíncrona todo o conteúdo, inclusive a marcação, como uma cadeia de caracteres. (Herdado de XmlReader) |
Read |
Quando substituído em uma classe derivada, lê o conteúdo, inclusive a marcação, que representa esse nó e todos os seus filhos. (Herdado de XmlReader) |
Read |
Lê de forma assíncrona o conteúdo, inclusive a marcação, representando este nó e todos os seus filhos. (Herdado de XmlReader) |
Read |
Verifica se o nó atual é um elemento e avança o leitor para o próximo nó. (Herdado de XmlReader) |
Read |
Verifica se o nó de conteúdo atual é um elemento com o Name fornecido e avança o leitor para o próximo nó. (Herdado de XmlReader) |
Read |
Verifica se o nó de conteúdo atual é um elemento com o LocalName e NamespaceURI fornecidos e avança o leitor para o próximo nó. (Herdado de XmlReader) |
Read |
Lê o conteúdo de um elemento ou nó de texto como uma cadeia de caracteres. |
Read |
Retorna uma nova instância |
Read |
Avança o XmlReader para o próximo elemento descendente com o nome qualificado especificado. (Herdado de XmlReader) |
Read |
Avança o XmlReader para o próximo elemento descendente com o nome local e URI do namespace especificados. (Herdado de XmlReader) |
Read |
Lê até que seja encontrado um elemento com o nome qualificado especificado. (Herdado de XmlReader) |
Read |
Lê até que seja encontrado um elemento com o nome do local e o URI do namespace especificados. (Herdado de XmlReader) |
Read |
Avança o |
Read |
Avança o |
Read |
Lê grandes fluxos de texto inseridos em um documento XML. (Herdado de XmlReader) |
Read |
Lê de forma assíncrona grandes fluxos de texto inserido em um documento XML. (Herdado de XmlReader) |
Resolve |
Resolve a referência de entidade para nós |
Skip() |
Ignora os filhos do nó atual. |
Skip |
Ignora de forma assíncrona os filhos do nó atual. (Herdado de XmlReader) |
To |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
IDisposable. |
Para obter uma descrição desse membro, confira Dispose(). (Herdado de XmlReader) |
IXml |
Para obter uma descrição desse membro, confira GetNamespacesInScope(XmlNamespaceScope). |
IXml |
Para obter uma descrição desse membro, confira LookupNamespace(String). |
IXml |
Para obter uma descrição desse membro, confira LookupPrefix(String). |
Produto | Versões |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: