将数据表转换为具有唯一ID行的xml

时间:2016-03-09 04:13:12

标签: c# .net xml c#-4.0 datatable

我正在将数据表转换为xml。

DataSet dataSet1 = new DataSet("Products");
products.TableName = "Product";
dataSet1.Tables.Add(products);
dataSet1.WriteXml(directory + "//matrix.xml");

代码运行正常。我只想在每一行中添加一个唯一的id列。我怎样才能做到这一点?。帮助将不胜感激。提前致谢。

2 个答案:

答案 0 :(得分:1)

一种方法是,创建一个 new 列,在表格中定义唯一性,然后导出到Xml

var column = new DataColumn("UniqueRow", typeof(System.String));    
products.Columns.Add(column );
column.SetOrdinal(0); // first column 

foreach(DataRow row in DataTable.Rows)
{
    row[column] = Guid.NewGuid(); // or any other id 
}

现在您可以使用相同的代码导出到Xml。

DataSet dataSet1 = new DataSet("Products");
products.TableName = "Product";
dataSet1.Tables.Add(products);
dataSet1.WriteXml(directory + "//matrix.xml");

答案 1 :(得分:0)

尝试:

products.column.add("uniqueID");
products.acceptchanges();

for each(datarow dr in products)
{
  int counter = 1
  dr["uniqueID"].Value = counter;
  counter++;
}