从XML而不是JSON C#asp.net中读取
本文关键字:C#asp net 读取 JSON XML | 更新日期: 2023-09-27 18:16:18
Hi,
今天,我有一个代码可以从URL中检索JSON数据。它工作得很好。
但现在我想做同样的事情,但我想从XML而不是JSON中检索。
我该如何做到最好?
提前感谢
Json URL:http://api.namnapi.se/v2/names.json?limit=3
XML网址:http://api.namnapi.se/v2/names.xml?limit=3
public class Data
{
public List<Objects> names { get; set; }
}
public class Objects
{
public string firstname { get; set; }
public string surname { get; set; }
}
protected void Page_Load(object sender, EventArgs e)
{
WebClient client = new WebClient();
string json = client.DownloadString("http://api.namnapi.se/v2/names.json?limit=3");
Data result = new System.Web.Script.Serialization.JavaScriptSerializer().Deserialize<Data>(json);
foreach (var item in result.names)
{
Label.Text += (item.firstname + " " + item.surname + "<br />");
}
}
有几种方法可以在C#中解析XML。
例如,您可以使用XmlDocument
:
WebClient client = new WebClient();
string xml = client.DownloadString("http://api.namnapi.se/v2/names.xml?limit=3");
XmlDocument document = new XmlDocument();
document.LoadXml(xml);
foreach (XmlElement node in document.SelectNodes("names/name"))
{
Label.Text += String.Format("{0} {1}<br/>",
node.SelectSingleNode("firstname").InnerText,
node.SelectSingleNode("lastname"));
}
还有一些方法,如使用XmlSerializer
将XML序列化为自己的类XmlTextReader
、Linq2Xml
等。选择最合适的方法。
阅读更多关于C#中XML解析的信息:
如何在C#中读取和解析XML文件
XML解析-读取一个简单的XML文件并检索值
在Stackoverflow和其他互联网资源上有很多关于这个主题的信息。
p.S.在我看来,最好使用JSON,因为它可以节省高达千兆字节的网络流量。