var subset = from item in document.Descendants("Id")
where item.Value == itemId.ToString()
select new PurchaseItem() {
Id = int.Parse(item.Parent.Element("Id").Value),
Name = item.Parent.Element("Name").Value,
Description = item.Parent.Element("Description").Value,
Price = int.Parse(item.Parent.Element("Price").Value)
};
Структура XML выглядит следующим образом:
<Items>
<Item>
<Id></Id>
<Name></Name>
<Description></Description>
<Price></Price>
</Item>
</Items>
Id и цена являются целочисленными значениями. Имя и описание являются строками.
Я нашел Linq to XML
отлично подходит для того, для чего я его использовал, это всего лишь фрагмент. Но, с другой стороны, я чувствую, что он должен или мог бы быть чище. Кастинг кажется наиболее очевидной проблемой в этом фрагменте.
Любой совет?