我正在使用DataSet中的ReadXML来读取没有任何架构的XML文档。每个父标记中都有2个“持续时间”标记。这就是ReadXML抱怨的原因:
System.Data.DataException:表'duration'已经被分配为另一个表'video'的子节点。无法将表'asset'设置为父表。
这是它试图阅读的XML文档:
(我无法正确粘贴XML)
这是我使用的C#代码:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
resultDs.ReadXml(response.GetResponseStream());
}
return resultDs;
有没有其他方法可以阅读此XML文档?
请点亮,
Simplecode
答案 0 :(得分:0)
阅读XML的方法有很多,取决于您的个人品味。以下是一些例子:
我尝试使用DataSet.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();
}