我使用ReadXML从数据集读取XML文档没有任何模式。在不同的父标签中有2个"duration"标签。这就是ReadXML抱怨的原因:
System.Data。DataException:表'duration'已经被分配为另一个表'video'的子表。不能设置表'asset'为父表。
这是它要读取的XML文档:
http://pastebin.com/39VStzcw(我无法在这里正确粘贴XML)
这是我使用的c#代码:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
resultDs.ReadXml(response.GetResponseStream());
}
return resultDs;
还有其他方法可以阅读这个XML文档吗?
请光线影业,
Simplecode
读取XML的方法有很多种,取决于您的个人品味。下面是一些例子:
- StreamReader XmlReader
- XPath 数据集
我试着用数据集阅读。ReadXml和它创建表很好,没有任何问题。唯一的区别是,我是从本地计算机访问XML,而不是通过像你这样的网络:
const string xmlPath = @"XmlFile.xml";
var ds = new DataSet();
var fs = new FileStream(xmlPath, FileMode.Open);
try
{
ds.ReadXml(fs);
foreach (DataTable table in ds.Tables)
{
Console.WriteLine("Table name: " + table.TableName);
}
Console.WriteLine("Test");
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
finally
{
fs.Close();
}