У меня есть приложение C #, которое вызывает хранимую процедуру, которая выдает результат в формате xml (с использованием FOR XML Explicit), который я хочу сохранить на диск. Делая некоторые исследования, я нашел следующий метод:
var data = new DataSet();
XmlReader reader = cmd.ExecuteXmlReader();
data.ReadXmlSchema(reader);
data.ReadXml(reader, XmlReadMode.Fragment);
data.WriteXml(filename);
Однако в файле выводится следующее:
<?xml version="1.0" standalone="yes" ?>
<NewDataSet />
Я думаю, что этот метод может работать только для XML Raw и XML Auto, однако я могу просмотреть таблицы набора данных и увидеть, есть ли данные.
ОБНОВЛЕНИЕ : я смог заставить его работать, не читая XmlSchema и не указывая XmlReadMode.