C# ASP.net从URL加载XML文件
试图简单地解析一个XML文件C# ASP.net从URL加载XML文件,c#,asp.net,xml,C#,Asp.net,Xml,试图简单地解析一个XML文件 protected void Page_Load(object sender, EventArgs e) { XmlDocument xdoc = new XmlDocument();//xml doc used for xml parsing xdoc.LoadXml("http://latestpackagingnews.blogspot.com/feeds/posts/default");//loading
protected void Page_Load(object sender, EventArgs e)
{
XmlDocument xdoc = new XmlDocument();//xml doc used for xml parsing
xdoc.LoadXml("http://latestpackagingnews.blogspot.com/feeds/posts/default");//loading XML in xml doc
XmlNodeList xNodelst = xdoc.DocumentElement.SelectNodes("entry");//reading node so that we can traverse thorugh the XML
foreach (XmlNode xNode in xNodelst)//traversing XML
{
litFeed.Text += "read";
}
}
但我得到:
根级别的数据无效。
第1行,位置1
我必须首先对文件执行XMLHTTP请求吗?或者我可以从外部url加载它,这是对的吗?试试这个:
protected void Page_Load(object sender, EventArgs e)
{
XmlDocument xdoc = new XmlDocument();//xml doc used for xml parsing
xdoc.Load(
"http://latestpackagingnews.blogspot.com/feeds/posts/default"
);//loading XML in xml doc
XmlNodeList xNodelst = xdoc.DocumentElement.SelectNodes("entry");//reading node so that we can traverse thorugh the XML
foreach (XmlNode xNode in xNodelst)//traversing XML
{
litFeed.Text += "read";
}
}
LoadXml正在直接等待xml字符串,Load可以使用uri获取xml数据。在您的代码中,xml解析器实际上是试图将地址解析为xml,而不是uri位置的内容
[编辑]您可以查看.Net Framework的内置提要处理类。这些类位于命名空间中。他们可以很容易地为您完成解析工作。几乎正确。。。只需删除我眼中的“newURI()”位。Load直接接受URL,但不接受URI对象。这两者都不起作用。。。而且@Jeff,删除新的URI行与我原来问题中的代码完全相同@汤姆·古伦:我用Load方法替换了LoadXml方法。前者等待xml数据,后者等待找到xml数据的位置。我期待它一遍又一遍地说“readread”,但是页面是空白的。。。不过没有错误。@Tom Gullen:现在我认为您的xpath查询无效。用正确的替换它,或者查看中的类提供的.net内置提要阅读