使用列模式从SQL TABLE创建XML

时间:2015-05-19 19:49:20

标签: c# sql-server xml linq

我的桌子下面有一列,

SALES_ORDERS.ORDER_SLIP.NUMBER|SALES_ORDERS.ORDER_SLIP.DATE|SALES_ORDERS.ORDER_SLIP.ARP_CODE

我需要的XML输出如下

<SALES_ORDERS>
  <ORDER_SLIP>
    <NUMBER>TEST</NUMBER>
    <DATE>02.09.2014</DATE>
    <ARP_CODE>CARI1</ARP_CODE>
  </ORDER_SLIP>
</SALES_ORDERS>

我需要根据列名创建xml,其中包括从顶部开始的完整路径。

如何从这样的表中获取这样的XML文件?如果有必要我可以使用LINQ,但我不知道该怎么做?

1 个答案:

答案 0 :(得分:0)

太容易了

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;

namespace ConsoleApplication1
{
    class Program
    {
        const string FILENAME = @"c:\temp\test.xml";
        static void Main(string[] args)
        {
            string SQL = "Enter Your SQL Select string here";
            string connStr = "Enter You connection string here";

            SqlDataAdapter adapter = new SqlDataAdapter(SQL, connStr);

            DataSet ds = new DataSet();
            adapter.Fill(ds);
            ds.DataSetName = "SALES_ORDERS";

            ds.WriteXml(FILENAME, XmlWriteMode.WriteSchema);
        }
    }
}
​