Я работаю с существующим XML-документом, который имеет структуру (частично) примерно так:
<Group>
<Entry>
<Name> Bob </Name>
<ID> 1 </ID>
</Entry>
<Entry>
<Name> Larry </Name>
</Entry>
</Group>
Я использую LINQ to XML для запроса XDocument для получения всех этих записей следующим образом:
var items = from g in xDocument.Root.Descendants("Group").Elements("Entry")
select new
{
name = (string)g.element("Name").Value,
id = g.Elements("ID").Count() > 0 ? (string)g.Element("ID").Value : "none"
};
Элементы "ID" не всегда присутствуют, поэтому моим решением для этого был джаз Count () выше. Но мне интересно, есть ли у кого-то лучший способ сделать это. Я все еще чувствую себя комфортно с этим новым материалом и подозреваю, что может быть лучший способ сделать это, чем то, как я это делаю в настоящее время.
Есть ли лучший / более предпочтительный способ делать то, что я хочу?