我有一个从复杂的xml结构中读取的数据集....
这是它的基本版本,为了问题
<cars>
<car>
<carName>Golf</carName>
<engine>
<model></model>
</engine>
<//car>
<car>
<carName>Dodge</carName>
<engine>
<model></model>
</engine>
<//car>
</cars>
首先,我创建数据集以获取整个文档....(我从文件中读取)
DataSet dsCars = new DataSet();
dsConfiguration.ReadXml("allcars.xml"));
接下来我想循环遍历所有的汽车行...为此我使用以下代码:
foreach(DataRow carDataRow in dsCars.Tables["Car"].Rows)
现在在这个循环中,我想将汽车行(及其所有子内容)注入新数据集
所以在foreach循环中我有代码
但是当我使用:tempTaskDS.WriteXml(@“c:\ test.xml”)序列化到文件时;
新创建的datatable = Carlist2为空白,根本不包含任何数据......
我做错了什么?
答案 0 :(得分:2)
我不确定你要做什么,但你可以在循环中试试这个:
DataSet tempTaskDS = new DataSet("tempCars");
tempTaskDS.Tables.Add("Cars");
tempTaskDS.Tables[0].Rows.Add(carDataRow);
答案 1 :(得分:1)
首先确保您的目标DataSet / DataTable与关于列数,列类型等的源DataSet / DataTable相同,然后使用
targetDataSet.Tables["CarList2"].ImportRow(sourceRow)