Слияние XMLTextReaders в C#
У меня есть веб-сайт, который должен извлекать информацию из двух разных источников данных XML. Первоначально мне нужно было получить данные только из одного источника, поэтому я создавал URL-адрес в бэкэнде, который отправлял и извлекал данные с сайта XML, а затем анализировал и отображал их в интерфейсе веб-сайта.
Теперь мне нужно использовать второй источник данных и объединить наборы результатов (которые являются идентично структурированным XML) в один набор результатов.
Вот код, который я сейчас использую для получения одного XML-канала.
sUrl = sbUrl.ToString (); // URL для подачи XML
XmlDocument xDoc = new XmlDocument();
StringBuilder oBuilder = new StringBuilder(); //The parsed HTML output
XmlTextReader oXmlReader = new XmlTextReader(sUrl);
oXmlReader.Read();
xDoc.Load(oXmlReader);
XmlNodeList List = xDoc.GetElementsByTagName("result");
foreach (XmlNode node in List)
{
XmlElement key = (XmlElement)node;
//BUILD THE OUTPUT HERE
}
Заранее спасибо за помощь.
1 ответ
Решение
Ты можешь использовать:
- Linq2Xml
- Конвертируйте представление XML в C# Objects и объедините результаты в массиве (чтобы вы могли сортировать / фильтровать данные)
- инкапсулируйте свой блок кода синтаксического анализа в метод и вызовите этот метод для каждого источника.