XmlReader.MoveToContent Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Vérifie si le nœud actuel est un nœud de contenu (texte non constitué d'espaces blancs, CDATA
, Element
, EndElement
, EntityReference
ou EndEntity
). Si le nœud n'est pas un nœud de contenu, le lecteur avance jusqu'au nœud de contenu suivant ou jusqu'à la fin du fichier. Il ignore les nœuds possédant les types suivants : 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
Retours
L’élément NodeType du nœud actuel trouvé par la méthode ou XmlNodeType.None
si le lecteur a atteint la fin du flux d'entrée.
Exceptions
Code XML incorrect dans le flux d'entrée.
Une méthode XmlReader a été appelée avant la fin d’une opération asynchrone précédente. Dans ce cas, l’exception InvalidOperationException est levée avec le message « Une opération asynchrone est déjà en cours ».
Exemples
Cela est utile lorsque vous souhaitez écrire du code qui peut ignorer le balisage XML aléatoire sans rupture. Par exemple, supposons que vous avez le code suivant :
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
Ce code peut gérer les entrées suivantes sans rupture :
<price>123.4</price>
et
<?xml version="1.0"><!DOCTYPE price SYSTEM
"abc"><price>123.4</price>
et
<?xml version="1.0"><!DOCTYPE price SYSTEM "abc"
[<!ENTITY p
"123.4">]><price>&p;</price>
et
<!-- some test comment --><?processing
instruction?><price>123.4</price>
Remarques
Si le nœud actuel est un nœud d’attribut, cette méthode déplace le lecteur vers l’élément propriétaire de l’attribut.
Pour obtenir la version asynchrone de cette méthode, consultez MoveToContentAsync.