今天碰到一个问题,就是调用对方的一个接口,对方的接口返回的是 XML 格式的字符串,即,直接 DataTable.WriteXml(),而我用 WebClient的 DownloadData 下载下来后,想再把这些 XML 转换为 DataTable,费了一翻周折后,转换成功,下面是代码:
System.Net.WebClient wc = new System.Net.WebClient();
wc.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
string url = "http://url.test.com";
DataTable dt= new DataTable();
try { byte[] data = wc.DownloadData(url);
StringReader strignReader = new StringReader(Encoding.UTF8.GetString(data));
XmlTextReader reader = new XmlTextReader(strignReader);
DataSet ds = new DataSet();
ds.ReadXml(reader);
dt = ds.Tables[0];
}
catch
{
}
连接地址为测试地址,
经过上面的转换,Xml格式的字符串(string)就能很容易的转换为DataSet(DataTable)拉,对方也能很方便的提供接口,提升了效率