【问题标题】:How to write a nested xml using DataSet如何使用 DataSet 编写嵌套的 xml
【发布时间】:2009-07-09 07:31:38
【问题描述】:

我使用 DataSet 从以下 xml 文件加载架构;

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

然后我清除了这个数据集并填充了数据。当我尝试调用我的数据集的 WriteXml 方法时,它抛出了一个异常说:

无法继续序列化 DataTable“节点”。它包含一个 DataRow,它在同一个外键上有多个父行。

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

还有其他解决办法吗?

【问题讨论】:

  • 感谢您的回答。我还有其他一些使用 DataSet 的理由。顺便说一句:我找到了这个异常的根本原因。我已经为“节点”表的某​​些行设置了两个不同的父级到不同的表。

标签: c# xml dataset


【解决方案1】:

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

【讨论】:

    【解决方案2】:

    考虑将 XElement 用于此类任务。如果您在某个时候确实需要 DataSet,您可以轻松地将 XElements 转换为 DS。

    【讨论】:

      猜你喜欢
      • 2011-07-27
      • 1970-01-01
      • 2017-08-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多