Questione : interrogazione del xml using il nome di nodo

Ottengo un xml in una risposta di webservice e devo potere filtrare attraverso esso dalla data di arrivo e da period.
HttpWebResponse ricerca = (HttpWebResponse) req.GetResponse ();
XmlDocument documento = nuovo XmlDocument (); documento del
. Carico (res.GetResponseStream ()); Xmlstr della stringa del
= doc.InnerXml;

-
-
-
-
-
  period
-
  1w
 

  arrival-date
-
  21-08-2010>
 

  arrival-time-fromame>
-
  1600
 

  arrival-time-untilname>
-
  1800
 

  departure-date>
-
  28-08-2010>
 

  departure-time>
-
  1000
 

  request
-
  No
 

  price
-
  579
 

  price-excl-discount</name>
-
  579
 

   

-
  period
-
  2w il


how del
1125 del
- del price-excl-discount</name> del

del
1125 del
- del

price del
No del
- del

request del
1000 del
- del

departure-time> del
04-09-2010> del
- del

departure-date> del
1800 del
- del

arrival-time-untilname> del
1600 del
- del

arrival-time-fromame> del
21-08-2010> del
- del

arrival-date può filtro da i esso in modo da posso dire qualcosa like
if (periodo = “1w„) e se (arrivo-data = “21-08-2010„) allora mostrarmi tutti i nodi all'interno del
class= del

Risposta : interrogazione del xml using il nome di nodo

Siete di destra; questa disposizione del xml è differente usare i nomi del xpath (con XmlDataSource). una cosa che potete fare è di ottenere i diversi valori dai nodi del membro ed i valori stabiliti nelle etichette/comandi come indicato sotto… vede se questa aiuta…
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
se (nodeArrivalDate! = posizione di segnale minimo
	&& nodeArrivalDate.NextSibling.InnerText == arrivalDate)
{

	Label_1.Text = GetFieldTextValue (memberNode, “prezzo„);
	Label_2.Text = GetFieldTextValue (memberNode, “prezzo-escl.-sconto„);

}

…

// GetFieldTextValue è metodo nello stesso codice categoria

stringa statica riservata GetFieldTextValue (memberNode di XmlNode, fieldName della stringa)
        {
            textValue della stringa = stringa. Vuoto;

            nodeField di XmlNode = memberNode.SelectSingleNode (stringa. Disposizione (“nome [. = \„ {0} \ “]„, fieldName));
            se (nodeField! = && nullo nodeField.NextSibling! = posizione di segnale minimo)
            {
                textValue = nodeField.NextSibling.InnerText;
            }

            textValue di ritorno;
        }
Altre soluzioni  
 
programming4us programming4us