Вы не можете просто написать больше XML в конце сериализованного DataSet
, так как если вы это сделаете, вы будете производить XML-документ с более чем одним элементом верхнего уровня. Используя XmlWriter
, вам нужно сделать что-то вроде этого:
using (XmlWriter xw = XmlWriter.Create(strXmlTestCasePath));
{
xw.WriteStartElement("container");
ds.WriteXml(xw, XmlWriteMode.IgnoreSchema);
// from here on, you can use the XmlWriter to add XML to the end; you then
// have to wrap things up by closing the enclosing "container" element:
...
xw.WriteEndElement();
}
Но это не поможет, если вы пытаетесь добавить элементы XML внутри в сериализованный DataSet
. Для этого вам нужно сериализовать DataSet
, прочитать его в XmlDocument
, а затем использовать методы DOM для манипулирования XML.
Или, альтернативно, создайте и заполните новый DataTable
непосредственно перед сериализацией DataSet
, а затем удалите его, когда вы закончите. Это действительно зависит от ваших реальных требований.