Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    c# e xml

    ciao a tutti ragazzi, vi scrivo perchè ho un grosso problema riguardo all'esecuzione di espressioni xpath su documenti xml.
    mi spiego meglio; ho scritto il seguente codice:

    codice:
    XmlTextReader reader = new XmlTextReader(@"c:\book.xml");
    XmlDocument doc = new XmlDocument();
    doc.Load(reader);
    
    XmlNodeList nodeList;
    XmlElement root = doc.DocumentElement;
    
    // nodeList =  root.SelectNodes("/bookstore/book/price[text()>'9.00']"); <-- con questa va
    
    nodeList = root.SelectNodes("/bookstore/book/price[text()='11.99']"); // <-- così non va
    
    Console.Write(nodeList.Count.ToString());


    il programma lavora su un file xml così strutturato



    codice:
    <bookstore>
        <book>
             <price>11.99</price>
             <author>..</author>
             <title>..</title>
             ..
             ..
        </book>
        .. e altri book
    </bookstore>

    il problema sostanziale è che se eseguo la seguente query:

    nodeList = root.SelectNodes("/bookstore/book/price[text() >'11.99']");

    il nodeList.Count mi restituisce il numero corretto di prezzi che sono maggiori di 11.99; viceversa se provo ad eseguire una query esatta ossia:


    nodeList = root.SelectNodes("/bookstore/book/price[text()='11.99'] ");

    il nodeList.Count mi restituisce come valore 0 nonostante ci sia più di un prezzo uguale a 11.99. la stessa cosa succede con il != ; in pratica non riesce proprio a lavorare sulle stringhe.

    Qualcuno mi può dare una mano?
    Non so davvero dove andare a sbattere la testa.

  2. #2
    risolto.

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,463

    Moderazione

    Originariamente inviato da GinoPilotino
    risolto.
    Potresti postare la soluzione per chi eventualmente incappasse nello stesso problema?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  4. #4
    semplicissimo, diciamo che sono talmente pollo che eseguivo la query sul file xml sbagliato.
    il codice che ho postato funziona perfettamente

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.