C# 从多个数据集创建 XML 文件(一个用于详细信息)

本文关键字:详细信息 一个 用于 XML 数据集 创建 文件 | 更新日期: 2023-09-27 18:32:19

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

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

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

我希望代码首先遍历标头数据集,将所有

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

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

    <?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 文件(一个用于详细信息)

我建议为标头和行创建DTO,在标头DTO中提供List<Line>,您可以根据需要检索数据并从这些数据中准备List<Header>并使用灭菌器将其转换为XML。

您可以先拥有 XSD,然后可以使用 XSD.exe 或 XSD2Code 从 XSD 生成 DTO,使用此生成的 DTO,它可以让您精细控制 XML 的生成方式。