2009-07-09 36 views
0

我使用DataSet从以下xml文件加载模式; 。如何使用DataSet编写嵌套的xml

<node id="0"> 
    <node id="1"/> 
</node> 

然后我清除此数据集并填充数据。当我试图引用我的数据集的方法中WriteXML,它抛出一个异常说:

不能与序列化DataTable的“节点”进行。它包含一个DataRow,它在同一个外键上有多个父行。

但我很确定在我的数据中没有多个父行。有人说我将数据集的EnforceConstraints设置为false,但它不起作用。

有没有其他解决方案?

+0

感谢您的回答。我有其他一些使用DataSet的理由。 顺便说一句:我找到了这个异常的根本原因。我已经为不同的表格设置了两个不同的父母,用于“节点”表的一些行。 – 2009-07-09 09:19:44

回答

1

DataSet专门用于匹配关系风格模式的数据。对于所有其他XML工作,您应该使用其中一种XML API,例如LINQ to XML(XElement),XmlReader,XmlDocument或XPathDocument。

0

考虑将XElement用于这类任务。如果您确实需要DataSet,您可以轻松地将XElements转换为DS并返回。