Я создал [WebMethod]
в веб-службе ASP.NET, которая считывает документы XML из различных веб-служб (служб ASP.NET и PHP).
После прочтения документов они объединяются вXML и вернулся.
Метод может успешно читать XML-документы из каждого веб-сервиса, но когда я пытаюсь добавить второй XML в первый, я получаю ArgumentException
и такое сообщение The node to be inserted is from a different document context.
Я не могу найти проблему,это может быть что-то делать с источником документа?но тогда оба документа абсолютно одинаковы (имеют одинаковые элементы).
Почему ArgumentException
?Чего мне не хватает?
[WebMethod]
public XmlDocument getRestaurants(String search_keywords)
{
XmlDocument xmlDom1 = new XmlDocument();
xmlDom1 = getRestaurantFromAspNetWS(search_keywords);
XmlTextReader myXmlTextReader =
new XmlTextReader
("http://some-iss.green.com/username/search.php?s=" + search_keywords);
XmlDocument xmlDom2 = new XmlDocument();
xmlDom2.Load(myXmlTextReader);
foreach (XmlElement xmlNode in xmlDom2.DocumentElement.ChildNodes)
{
//trying to append childNodes of xmlDom2 into xmlDom1
//and this is where i get ArgumentException
xmlDom1.DocumentElement.AppendChild(xmlNode);
}
return xmlDom1;
}