Получить элемент из XML c определённым атрибутом
Имеется вот такой XML:
<?xml version="1.0" encoding="utf-8"?>
<Objects>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="EmailAddress" Type="System.String">Anton.Antonov@gamil.com</Property>
<Property Name="ExpirationDate" Type="System.DateTime">21.07.2022 10:54:59</Property>
</Object>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="EmailAddress" Type="System.String">Slavka.Pavlov@mail.r0</Property>
<Property Name="ExpirationDate" Type="System.DateTime">23.02.2021 5:51:59</Property>
</Object>
</Objects>
Как с помощью LINQToXml вытащить Property с Name ="ExpirationDate"? Property с name="EmailAddress" вытаскивается легко, а вот как вытащить второй Property ума не приложу. Всё это вытаскивается в лист,при заполнении Date выходит ошибка.
List<EmailDatePair> emails = xdoc.Descendants("Object").Select(val => new EmailDatePair()
{
Email = val.Element("Property").Value,
Date = val.Element("Property").Attribute("Name").Value == "ExpirationDate",
}).ToList();
Источник: Stack Overflow на русском