【问题标题】:C# Create XML File from with more than one dataset (one being for details)C# 使用多个数据集创建 XML 文件(一个用于详细说明)
【发布时间】:2014-11-28 14:25:13
【问题描述】:

我不是最有经验的开发人员,如果我在这里没有使用正确的术语,请原谅。

我想在 Visual Studio 中使用 C# 从 SQL Server 的数据中创建一个 XML 文件。

数据将来自两个数据集。第一个将是主要的“标题”详细信息,然后第二个将是每个标题的“行详细信息”。

我希望代码首先遍历标头数据集,将所有列添加到 xml,然后在移动到下一行之前,它将遍历第二个数据集并找到与当前行匹配的行第一个数据集(按 ID)并将所有这些行添加到 XML。

只能有一个唯一的标题,但可以有多个行详细信息。 XML 应该如下所示,其中 header 来自第一个数据集,而 line 是第二个(只是示例数据):

    <?xml version="1.0"?>
    <Header>
        <ID>1</ID>
        <Name>James</Name>
        <Address>12 London Road</Address>
        <TelNumber>07543430921</TelNumber>
        <Line>
            <LineItem>
                <OrderNo>0001</OrderNo>
                <Price>100.00</Price>
                <Tax>20.00</Tax>
                <Delivery>5.00</Delivery>
            </LineItem>
            <LineItem>
                <OrderNo>0002</OrderNo>
                <Price>200.00</Price>
                <Tax>20.00</Tax>
                <Delivery>6.00</Delivery>
            </LineItem>
         </Line>
    </Header>
    <Header>
        <ID>2</ID>
        <Name>Danny</Name>
        <Address>56 High Street</Address>
        <TelNumber>07698903111</TelNumber>
        <Line>
            <LineItem>
                <OrderNo>0005</OrderNo>
                <Price>300.00</Price>
                <Tax>20.00</Tax>
                <Delivery>9.99</Delivery>
            </LineItem>
        </Line>
    </Header>

我不知道如何编写代码,因此非常感谢任何对我的帮助。

谢谢

【问题讨论】:

    标签: c# xml dataset


    【解决方案1】:

    我建议为 Header 和 Lines 创建 DTO,在 Header DTO 中提供 List&lt;Line&gt;,您可以根据需要检索数据并从该数据中准备 List&lt;Header&gt; 并使用 sterilizer 将其转换为 XML。

    您可以先拥有您的 XSD,然后您可以使用 XSD.exe 或 XSD2Code 从 XSD 生成 DTO,使用这个生成的 DTO 可以让您更好地控制如何生成 XML。

    【讨论】:

      猜你喜欢
      • 2019-01-08
      • 1970-01-01
      • 2021-12-22
      • 1970-01-01
      • 2022-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多