Обработка XML из таблицы (по одной строке в каждой записи)

IBM обеспечивает только подключение базы данных к iSeries, поэтому мне приходится решать эту проблему, используя таблицу для передачи данных из iSeries в .NET. Программа RPGLE создает XML-документ в таблице для обработки на стороне .NET. Дело в том, что на одну запись в таблице приходится одна строка XML-документа.

Чтобы визуализировать, представьте, что существует первичный ключ с автоинкрементом.

  1  <?xml version="1.0" encoding="utf-8" ?>
  2  <displayFile name="APDS001FM">
  3  <recordFormatname="SFL1">
  4  <fieldName name="*IN12" io="I" type="alpha" len="1">0</fieldName>
  5  <fieldName name="WLINE" io="O" type="alpha" len="79">PURCHASE ORDER</fieldName>
  6  </recordFormat>
  7  </displayFile>

Мне нужно проанализировать это, чтобы получить данные «WLINE» (в данном случае «ЗАКАЗ НА ПОКУПКУ»).

Как лучше всего вывести записи из таблицы в XDocument, чтобы я мог легко работать с XML.

Я попытался загрузить все записи в строку. Но у XDocument, похоже, нет способа загрузить его из строки.

// Retieve the XML and process it.
XMLOUTPTableAdapter xmlOutTA = new XMLOUTPTableAdapter();
DataLayer.DataSet1.XMLOUTPDataTable xmlOutDT = xmlOutTA.GetData();
foreach (DataLayer.DataSet1.XMLOUTPRow row in xmlOutDT)
{
  xmlString += row.XMLLINE;
}

// Create and XML Document
XDocument xmlDoc = XDocument.Load(xmlString);

Это то, что я надеялся сделать.


person Mike Wills    schedule 10.11.2009    source источник


Ответы (1)


Вы можете загрузить XDocument из строки с помощью XDocument.Parse(string text).

person GraemeF    schedule 10.11.2009
comment
Я впервые работаю с LINQ. Я пропустил это, и это не появилось в моем поиске в Интернете. Спасибо! - person Mike Wills; 10.11.2009