Al momento sei offline in attesa che la connessione Internet venga ristabilita

Come spostarsi in XML con la classe XPathNavigator utilizzando Visual Basic

Questo articolo è stato precedentemente pubblicato con il codice di riferimento I301111
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell’utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell’utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.

Clicca qui per visualizzare la versione originale in inglese dell’articolo: 301111
Per una versione di questo articolo, Microsoft Visual C# vedere 308343.
Per una versione di Microsoft Visual Basic 6.0 di questo articolo, vedere 271619.
Sommario
In questo articolo viene illustrato come spostarsi Documenti di Extensible Markup Language (XML) con un oggetto XPathNavigator viene creato da un oggetto XPathDocument . In questo esempio carica un oggetto XPathDocument con dati XML, viene creato un oggetto XPathNavigator come una vista dei dati e visualizza il codice XML spostandosi nel documento.

Requisiti

Il Nell'elenco che segue vengono indicati l'hardware consigliato, software, rete infrastruttura e i service Pack necessari:
  • Microsoft Windows Server 2003, Microsoft Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server o Microsoft Windows NT 4.0 Server
  • Microsoft Visual Studio 2005 o Microsoft Visual Studio .NET
Questo si presume che abbia familiarità con i seguenti argomenti:
  • Terminologia XML
  • Creazione e lettura di file XML
  • Sintassi XML Path Language (XPath)

Come utilizzare la classe XPathNavigator per spostarsi in XML

  1. In Visual Studio 2005 o in Visual Studio. NET, creare un Visual Basic 2005 o applicazione di Console Visual Basic.

    Nota In questo esempio viene utilizzato un file denominato Books. Xml. È possibile creare il file Books. XML, oppure è possibile utilizzare l'esempio fornito con il .NET software Development Kit (SDK) Quickstarts. Se si dispone di Guide rapide installate, Books. XML si trova nella seguente cartella:
    Programmi \ Microsoft.NET \FrameworkSDK\Samples\Quickstart\Howto\Samples\Xml\Transformxml\VB
    In alternativa, è possibile ottenere questo file, visitare il seguente sito Web:
    È necessario copiare il file Books. XML per la Cartella \Bin\Debug, che si trova sotto la cartella in cui è creato progetto.
  2. Assicurarsi che il progetto fa riferimento lo spazio dei nomi System. XML .
  3. Utilizzare l'istruzione Imports negli spazi dei nomi Xml e XPath in modo che non sia necessario qualificare le dichiarazioni in tali spazi dei nomi nel codice. È necessario utilizzare l'istruzione Imports prima di qualsiasi altra dichiarazione.
    Imports System.XmlImports System.Xml.XPath					
  4. Dichiarare le variabili appropriate. Dichiarare un oggetto XPathDocument contenga il documento XML e un oggetto XPathNavigator per valutare le espressioni XPath e spostarsi al documento. Dichiarare un oggetto stringa per contenere l'espressione XPath. Aggiungere il codice della dichiarazione in routine Main di Module1.
    Dim nav As XPathNavigatorDim docNav As XPathDocument					
  5. Caricare un oggetto XPathDocument con il file di esempio Books. Xml. La classe XPathDocument utilizza Extensible Stylesheet Language Transformations (XSLT) per fornire una cache veloce e orientata alle prestazioni per l'elaborazione del documento XML. È simile al documento oggetto Model (DOM) XML ma altamente ottimizzata per l'elaborazione XSLT e il modello di dati XPath.
    'Open the XML.docNav = New XPathDocument("books.xml")					
  6. Creare un oggetto XPathNavigator dal documento. XPathNavigator consente di spostare i nodi degli attributi e il nodi dello spazio dei nomi in un documento XML.
    'Create a navigator to query with XPath.nav = docNav.CreateNavigator					
  7. Spostarsi alla radice del documento con il metodo MoveToRoot . MoveToRoot imposta lo spostamento al nodo del documento che contiene l'intero struttura di nodi.
    'Initial XPathNavigator to start at the root.nav.MoveToRoot()					
  8. Utilizzare il metodo MoveToFirstChild per passare ai figli del documento XML. Il metodo MoveToFirstChild sposta al primo figlio del nodo corrente. Nel caso di dell'origine Books. XML che si desidera spostare dal documento principale nel bambini, la sezione di commento e il nodo Bookstore.
    'Move to the first child node (comment field).nav.MoveToFirstChild()					
  9. Utilizzare il metodo MoveToNext per scorrere i nodi di pari livello. Il metodo MoveToNext Sposta pari livello successivo del nodo corrente.
    'Loop through all the root nodes.Do    ...Loop While nav.MoveToNext					
  10. Utilizzare la proprietà NodeType per assicurarsi che elaborano solo i nodi elemento, e utilizzare la proprietà Value per visualizzare la rappresentazione testo dell'elemento.
    Do    'Find the first element.    If nav.NodeType = XPathNodeType.Element Then'If children exist.If nav.HasChildren Then    'Move to the first child.    nav.MoveToFirstChild()    'Loop through all the children.    Do'Display the data.Console.Write("The XML string for this child ")Console.WriteLine("is '{0}'", nav.Value)Loop While nav.MoveToNextEnd If    End IfLoop While nav.MoveToNext					
  11. Utilizzare la proprietà HasAttributes per determinare se un nodo possiede attributi. È possibile utilizzare anche altri metodi, ad esempio MoveToNextAttribute, per passare a un attributo e verificarne il valore. Nota che questo segmento di codice illustra solo i discendenti del nodo principale e non il tutta la struttura.
    Do    'Find the first element.    If nav.NodeType = XPathNodeType.Element Then'if children existIf nav.HasChildren Then    'Move to the first child.    nav.MoveToFirstChild()    'Loop through all the children.    Do'Display the data.Console.Write("The XML string for this child ")Console.WriteLine("is '{0}'", nav.Value)'Check for attributes.If nav.HasAttributes Then    		Console.WriteLine("This node has attributes")End IfLoop While nav.MoveToNextEnd If    End IfLoop While nav.MoveToNext					
  12. Utilizzare il metodo ReadLine dell'oggetto Console per aggiungere una pausa alla fine della visualizzazione della console a più visualizzare immediatamente i risultati sopra indicati.
    'Pause.Console.ReadLine()					
  13. Generare ed eseguire il progetto applicazione Console.

Elenco completo del codice

Imports System.XmlImports System.Xml.XPathModule Module1    Sub Main()        Dim nav As XPathNavigator        Dim docNav As XPathDocument        docNav = New XPathDocument("books.xml")        nav = docNav.CreateNavigator        nav.MoveToRoot()        'Move to the first child node (comment field).        nav.MoveToFirstChild()        Do            'Find the first element.            If nav.NodeType = XPathNodeType.Element Then                'if children exist                If nav.HasChildren Then                    'Move to the first child.                    nav.MoveToFirstChild()                    'Loop through all the children.                    Do                        'Display the data.                        Console.Write("The XML string for this child ")                        Console.WriteLine("is '{0}'", nav.Value)                        'Check for attributes.                        If nav.HasAttributes Then                            Console.WriteLine("This node has attributes")                        End If                    Loop While nav.MoveToNext                End If            End If        Loop While nav.MoveToNext        'Pause.        Console.ReadLine()    End SubEnd Module				
Riferimenti
Per ulteriori informazioni, visitare il seguente Web Microsoft Developer Network (MSDN) siti: Per ulteriori informazioni, visitare il seguente sito Web World Wide Web Consortium (W3C):
XML Path Language (XPath)
Versione 1.0: Raccomandazione W3C 16 novembre 1999
http://www.w3.org/TR/1999/REC-xpath-19991116
Sfoglia dotnet

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 301111 - Ultima revisione: 07/05/2012 16:26:00 - Revisione: 1.0

Microsoft Visual Basic 2005, Microsoft Visual Basic .NET 2003 Standard Edition, Microsoft Visual Basic .NET 2002 Standard Edition

  • kbvs2005applies kbvs2005swept kbdownload kbsample kbhowtomaster kbmt KB301111 KbMtit
Feedback