【问题标题】:How to get DataTable to serialize better?如何让 DataTable 更好地序列化?
【发布时间】:2010-04-14 19:13:27
【问题描述】:

我有以下将 DataTable 序列化为 XML 的代码。

StringWriter sw = new StringWriter();
myDataTable.WriteXml(sw);

这可行,但是,序列化的 XML 看起来像这样:

<NameOfTable>
    <NameOfTable>
        <ID>1</ID>
        <Name>Jack</Name>
    </NameOfTable>
    <NameOfTable>
        <ID>2</ID>
        <Name>Frank</Name>
    </NameOfTable>
</NameOfTable>

有没有办法将外部&lt;NameOfTable&gt; 更改为&lt;Records&gt;,将内部&lt;NameOfTable&gt; 更改为&lt;Person&gt;

【问题讨论】:

    标签: c# xml serialization .net-2.0 datatable


    【解决方案1】:

    这可以满足您的要求。但我不认为它做你想要的。

        DataSet ds = new DataSet("Records");
        DataTable dt = new DataTable("Person");
        ds.Tables.Add(dt);
        dt.Columns.Add("ID");
        dt.Columns.Add("Name");
    
        dt.Rows.Add(new object[] { 1, "Jack" });
        dt.Rows.Add(new object[] { 2, "Frank" });
    
        StringWriter sw = new StringWriter();
        dt.WriteXml(sw);
    
        MessageBox.Show(sw.ToString());
    

    【讨论】:

      【解决方案2】:

      在将表写入 XML 之前,您可以更改数据表中的列名。不是最佳的,但它会做你想要的。

      【讨论】:

        猜你喜欢
        • 2021-12-06
        • 2020-10-29
        • 2010-09-13
        • 1970-01-01
        • 2011-12-30
        • 2012-01-29
        • 2011-04-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多