Læsning af xml via internettet med XPathDocument
Jeg skal starte med at sige, at jeg ikke har ret meget erfaring med C#. Men nu er jeg begyndt med Visual C# 2010 Express (den gratis).Jeg vil gerne læse fra en php-fil via internettet. php-filen returnerer et xml dokument, som skal bruges til at danne listen i en combo-boks.
Jeg er inspireret af arne_v's kode fra denne guide: http://www.eksperten.dk/guide/1259
Min kode er placeret i formens load, og ser sådan ud:
//XPathDocument doc = new XPathDocument("test.xml");
XPathDocument doc = new XPathDocument("http://minside.dk/test/test.php?action=get_albums");
XPathNavigator nav = doc.CreateNavigator();
XPathNodeIterator albums = nav.Select("//albums/album");
while(albums.MoveNext())
{
XPathNavigator album = albums.Current;
this.comboBoxAlbums.Items.Add(album.SelectSingleNode("album_title/text()").Value);
}
Når jeg forsøger med den kode, får jeg ingen poster. Hvis jeg derimod tilgår php-filen via min browser, kopierer resultatet ind i en xml fil og saver den lokalt, så virker det - gøres ved at bruge den udkommenterede linie 1 i stedet for linie 2.
Mine spørgsmål er:
1) Er det jeg prøver muligt? Har googlet det, og tror ja
2) Hvis det er muligt, hvad kan der så være galt?
3) Hvis det ikke er muligt, kan jeg så bruge XPathDocument eller noget tilsvarende til at læse xml fra en tekst-streng. Filen er ikke så lang, at det giver mening at save den lokalt.
Jeg kan godt læse xml filen med WebClient og UploadString, men tænkte at det var bedre at gøre det i et hug.