【发布时间】:2011-10-20 20:06:52
【问题描述】:
背景信息: 过去,我一直在收集 XML 文件的集合并遍历每个 XML 文件,对其进行解析,将字符串数据传递给数据传输对象,并将对象传递给数据库。
以前,我的 XML 是这样的。
<messages>
<message>
<title>Red Wall</title>
<summary>This is a good article</summary>
<ISBN>13546846545464</ISBN>
</message>
</messages>
在这里,我只有一个元素。因此,我将使用 LINQ 解析 XML 并检索后续元素(标题、摘要、isbn)。然后我会初始化/实例化一个对象,将其属性分配给我检索到的值,然后将其发送出去。
现在我的 XML 看起来像这样:
<messages>
<message>
<title>Red Wall</title>
<summary>This is a good article</summary>
<ISBN>13546846545464</ISBN>
</message>
<message>
<title>Blue Wall</title>
<summary>This is not a good article</summary>
<ISBN>15648465416</ISBN>
</message>
</messages>
我的 XML 文件中现在有两个(或更多)元素,对于每个元素,我需要 1) 确定有多个元素并 2)每个都创建一个单独的 DTO 来保存我解析的数据。
我的问题是:如何解析具有多个标签的 XML 并将遇到的每个标签识别为彼此分开?
最后说明:在解析时,我需要能够实例化一个 DTO 以捕获我返回的信息。
感谢您的帮助!
【问题讨论】:
-
对于每个文件,您需要在尝试解析之前确定它是否具有多个元素?