After an advice from a user that answered to my question I'm tring to convert my XmlDocument code to XmlReader code but I'm having some troubles.
This is XML (generated from php-mysql Page)
<row>
<idLink>64</idLink>
<idHost>3</idHost>
<url>http://www.google.com</url>
</row>
<row>
<idLink>68</idLink>
<idHost>4</idHost>
<url>http://www.bing.com</url>
</row>
..... until about 10000 rows
This is my XmlDocument code:
xmlDoc.Load("http://www.myUrl.com/list.php");
if (xmlDoc.DocumentElement != null){
foreach (XmlNode node in xmlDoc.DocumentElement)
{
if (node.Name == "row")
{
list.Add(new Links {
idLink = Convert.ToInt32(node.ChildNodes[0].InnerText),
idHost = Convert.ToInt32(node.ChildNodes[1].InnerText),
url = node.ChildNodes[2].InnerText });
}
}
return list;
Now I have some trouble to Convert in XmlReader, I tried many code but I can't handle it.
using (XmlReader reader = new XmlTextReader("http://myUrl.com/list.php"))
{
if (reader.NodeType == XmlNodeType.Element)
?????
If you are doing read only operations on an xml file then you can you use
XmlReader
but as @Marc Gravell points out it is difficult.In this situation I will create a class that wraps an
XPathDocument
using anXmlReader
. I then create anXPathNavigator
to read the data. Here's an example:As shown above, the reading of the data can then be encapsulated into an associated object model. You can see some details in my answer on this question:
How do I manipulate an XML document one parent element at a time?
You can use
See: http://blog.jongallant.com/search?q=how+to+convert+xmldocument+to+xmlreader+for+sqlxml+data+type