XmlReader.MoveToContent Método
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.
Verifica se o nó atual é um nó de conteúdo (texto sem espaço em branco, CDATA
, Element
, EndElement
, EntityReference
ou EndEntity
). 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. Pula nós de tipo seguir: ProcessingInstruction
, DocumentType
, Comment
, Whitespace
, ou SignificantWhitespace
.
public:
virtual System::Xml::XmlNodeType MoveToContent();
public virtual System.Xml.XmlNodeType MoveToContent ();
abstract member MoveToContent : unit -> System.Xml.XmlNodeType
override this.MoveToContent : unit -> System.Xml.XmlNodeType
Public Overridable Function MoveToContent () As XmlNodeType
Retornos
O NodeType do nó atual encontrado pelo método ou XmlNodeType.None
se o leitor atingiu o fim do fluxo de entrada.
Exceções
XML incorreto encontrado no fluxo de entrada.
Um método XmlReader foi chamado antes do término de uma operação assíncrona anterior. Nesse caso, InvalidOperationException será gerado com a mensagem “Uma operação assíncrona já está em andamento”.
Exemplos
Isso é útil quando você deseja escrever um código que pode ignorar a marcação XML aleatória sem interromper. Por exemplo, suponha que você tenha o seguinte código:
if ( reader->MoveToContent() == XmlNodeType::Element &&
reader->Name->Equals( "price" ) )
{
_price = reader->ReadString();
}
if (reader.MoveToContent() == XmlNodeType.Element && reader.Name == "price")
{
_price = reader.ReadString();
}
If reader.MoveToContent() = XmlNodeType.Element And reader.Name = "price" Then
_price = reader.ReadString()
End If
Esse código pode lidar com as seguintes entradas sem interromper:
<price>123.4</price>
e
<?xml version="1.0"><!DOCTYPE price SYSTEM
"abc"><price>123.4</price>
e
<?xml version="1.0"><!DOCTYPE price SYSTEM "abc"
[<!ENTITY p
"123.4">]><price>&p;</price>
e
<!-- some test comment --><?processing
instruction?><price>123.4</price>
Comentários
Se o nó atual for um nó de atributo, esse método moverá o leitor de volta para o elemento que possui o atributo.
Para obter a versão assíncrona deste método, consulte MoveToContentAsync.