如何从DataSet获取XmlNode?

时间:2011-08-03 14:05:20

标签: asp.net xml dataset xmldocument xmlwriter

我正在尝试使用XmlWriterXmlDocument编写XML文档。我有4个子节点写在根元素中,前三个很好。然而,最后一个是从DataSet生成的。这是我的缩写代码:

DataSetds; 

XmlNode RecordSet = xdoc.CreateNode(XmlNodeType.Element, "RecordSet", "");
XmlNode RecordSetTotal = xdoc.CreateNode(XmlNodeType.Attribute, "TOTAL", "");
RecordSetTotal.Value = gvExcelData.Rows.Count.ToString();
RecordSet.Attributes.SetNamedItem(RecordSetTotal);
RecordSet.InnerXml = ds.GetXml();
root.AppendChild(RecordSet);

输出XML:

<RecordSet TOTAL="2">
    <RecordSet>
        <Record>
            <Column 1></Column 1>
            <Column 2></Column 2>
            <Column 3></Column 3>
            <Column 4></Column 4>
            <Column 5></Column 5>
        </Record>
        <Record>
            <Column 1></Column 1>
            <Column 2></Column 2>
            <Column 3></Column 3>
            <Column 4></Column 4>
            <Column 5></Column 5>
        </Record>
    </RecordSet>
</RecordSet>

我只需要一个根元素RecordSet,它需要一个等于记录总数的属性Total。如果我能以某种方式将我从ds.GetXml()得到的XML字符串直接解析为XmlNode,那么我就可以设置我的属性并继续前进。但我可能是错的。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

我建议你这样做。将其加载到XmlDocument中,处理它,复制它。