0

我想使用 xml 文件来存储我的程序数据。xml 的结构如下所示:

<?xml version="1.0" standalone="yes"?>
<Data>
    <Projects>
        <Project>
            <Name>Name1</Name>
            <Description>Description1</Description>
        </Project>
        <Project>
            <Name>Name2</Name>
            <Description>Description2</Description>
        </Project>
    </Projects>
</Data>

我想使用 aDataSet因为它提供了对 xml 结构的轻松读写。但问题是,如何读取和写入<Project>-Nodes 的值?我可以访问<Projects>-Node,但是我不知道如何继续,因为我猜单个项目不是表。那么,如何访问深度三(数据->项目->项目)中的节点?我认为这必须以某种方式工作,因为读取文件并将其输出到控制台上确实有效。

4

3 回答 3

0

您最好尝试使用具有对象列表的 Data 类 Project 更容易序列化/反序列化。我认为使用数据集读取/写入 xml 并不容易。

于 2012-05-23T12:02:59.727 回答
0

而不是DataSet我建议您改用 XDocument 和 XElement,因为它们可以提供更好的 API 来访问 XML 结构中的项目。

http://msdn.microsoft.com/en-us/library/system.xml.linq.xdocument.aspx

另一个可以帮助您入门的链接:

如何从 XDocument 获取 XML 节点

于 2012-05-23T12:03:08.663 回答
0

听起来这DataSet对你来说不是正确的方式。它不是用于读写任意 XML 的通用机制。

如果您使用的是 .NET Framework 4 或更高版本,我建议使用XDocument而不是DataSet.

如果您使用的是较旧的 .NET Framework 版本,那么还有很多其他选项,包括XmlDocumentXmlReaderXmlSerlializer。选择哪一个取决于您的数据来自哪里以及您希望如何处理它。

于 2012-05-23T12:03:32.987 回答