2009-11-10 4 views
0

IBM предоставляет только соединение с базой данных для iSeries, поэтому мне нужно обойти эту проблему, используя таблицу для передачи данных из iSeries в .NET. Программа RPGLE создает XML-документ в таблице для обработки на стороне .NET. Дело в том, что на одной записи в таблице есть одна строка документа XML.Обработка 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» (в данном случае «Purchase Order»).

Что было бы лучшим способом получить записи из таблицы в 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); 

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

ответ

2

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

+0

Моя первая работа с LINQ. Я пропустил это, и он не появился в моих веб-поисках. Благодаря! –