Я загружаю документ XML в объект XDocument, выполняю запрос и затем возвращаю данные через веб-сервис в виде объекта XmlDocument.
Приведенный ниже код работает нормально, но кажется немного вонючим. Есть ли более чистый способ получения результатов запроса и преобразования их в XDocument или XmlDocument?
XDocument xd = XDocument.Load(Server.MapPath(accountsXml));
var accounts = from x in xd.Descendants("AccountsData")
where userAccounts.Contains(x.Element("ACCOUNT_REFERENCE").Value)
select x;
XDocument xd2 = new XDocument(
new XDeclaration("1.0", "UTF-8", "yes"),
new XElement("Accounts")
);
foreach (var account in accounts)
xd2.Element("Accounts").Add(account);
return xd2.ToXmlDocument();