Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
295 views
in Technique[技术] by (71.8m points)

c# - Creating XML using DataSet.WriteXml. How to change the node name?

Is there any way to change the DataSet default node name? I am creating XML from a DataTable.

This is my code:

DataSet dataSet = new DataSet("Products");
dataSet.Tables.Add(tbl);
dataSet.WriteXml(@"D:Temp	est.xml");

This is the XML I'm getting:

 <Products>
    <Table1>
      <product_name>McWilliams Hanwood Chardonnay 750mL</product_name>      
      <id>121385</id>
      <price>7.60</price>
    </Table1>
    <Table1>
        ...
    </Table1>
    <Table1>
        ...
    </Table1>
</Products>

Is there a way to change Table1 to Product like:

<Products>
 <Product>
 ....
 </Product>
  <Product>
 ....
 </Product>
</Products>
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

The name that appears is the name of the DataTable. You can change its name using the TableName property like this:

DataSet dataSet = new DataSet("Products");
tbl.TableName = "Product";
dataSet.Tables.Add(tbl);
dataSet.WriteXml(@"D:Temp	est.xml");

You can also pass the "Product" name when you construct the table:

var tbl = new DataTable("Product");

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...