Linq to Xml - очень краткий способ выразить Xml из запросов linq.
Вот как вы можете построить дерево Xml в LINQ to Xml (от Microsoft: https://msdn.microsoft.com/en-us/library/bb387089.aspx).
XElement contacts =
new XElement("Contacts",
new XElement("Contact",
new XElement("Name", "Patrick Hines"),
new XElement("Phone", "206-555-0144"),
new XElement("Address",
new XElement("Street1", "123 Main St"),
new XElement("City", "Mercer Island"),
new XElement("State", "WA"),
new XElement("Postal", "68042")
)
)
);
Выход:
<Contacts>
<Contact>
<Name>Patrick Hines</Name>
<Phone>206-555-0144</Phone>
<Address>
<Street1>123 Main St</Street1>
<City>Mercer Island</City>
<State>WA</State>
<Postal>68042</Postal>
</Address>
</Contact>
</Contacts>
Джозефа Albahari великие C# библия C# 5.0 In a Nutshell имеет много примеров, включая главу о "Linq в XML". Его бесплатное приложение LinqPad поставляется с некоторыми хорошими примерами, подобными приведенным ниже из главы 10.
Примеры ниже строят XML непосредственно из операторов Linq. Вы можете видеть, что он дает вам более прямой контроль над выходным XML, чем прямая сериализация и упрощает создание более сложных структур XML.
// Query Example 1
IQueryable<XElement> sqlQuery =
from c in Customers
select
new XElement ("customer", new XAttribute ("id", c.ID),
new XElement ("name", c.Name),
new XElement ("buys", c.Purchases.Count)
);
var customers = new XElement ("customers", sqlQuery);
// Query Example 2
new XElement ("customers",
from c in Customers
let lastBigBuy = (
from p in c.Purchases
where p.Price > 1000
orderby p.Date descending
select p
).FirstOrDefault()
select
new XElement ("customer", new XAttribute ("id", c.ID),
new XElement ("name", c.Name),
new XElement ("buys", c.Purchases.Count),
new XElement ("lastBigBuy",
new XElement ("description",
lastBigBuy == null ? null : lastBigBuy.Description),
new XElement ("price",
lastBigBuy == null ? 0m : lastBigBuy.Price)
)
)
)
попробовать это: http://stackoverflow.com/questions/284324/how-can-i-build-xml-in-c – deeptowncitizen
Существует не хватает информации здесь, чтобы помочь вам. Пожалуйста, покажите код, который вы создали, и примеры того, где он не работает, включая ошибки. – paqogomez
Я бы предложил добавить атрибуты xml к вашим классам, а затем использовать XmlSerializer – MIke