DataSet.DataTable.DataRow (Single) в строку XML - PullRequest
1 голос
/ 04 февраля 2012

У меня есть строго типизированные наборы данных в проекте, над которым я сейчас работаю, и мне нужно преобразовать объект DataRow из DataSet (только 1 DataTable в DataSet) в строку XML. Я попытался сделать следующее с полным провалом:

string originalXmlString = string.Empty;

DataSet ds = new DataSet();

ds.Tables.Add(this.ObjectDataRow.Table);
ds.Tables[0].ImportRow(this.ObjectDataRow);

using (StringWriter sw = new StringWriter())
{
    ds.Tables[0].WriteXml(sw);                         
    originalXmlString = sw.ToString();
}

req.OriginalDataRow = originalXmlString;

Любая помощь будет принята с благодарностью!

Спасибо, Кит

1 Ответ

3 голосов
/ 06 февраля 2012

Я смог понять это с помощью страницы MSDN, касающейся функции Clone () .

Следующий код исправлен и прекрасно работает:

string originalXmlString = string.Empty;

DataSet ds = new DataSet();

//ds.Tables.Add(this.ObjectDataRow.Table);

ds.Tables.Add(this.ObjectDataRow.Table.Clone());

ds.Tables[0].ImportRow(this.ObjectDataRow);

using (StringWriter sw = new StringWriter())
{
    ds.Tables[0].WriteXml(sw);                         
    originalXmlString = sw.ToString();
}

req.OriginalDataRow = originalXmlString;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...