У меня есть следующее в XML примере:
<custreply>
<customer cid="1234">
<ack id="6000" error="false">
<info>
<custgroup>A</custgroup>
<message>cust created</message>
</info>
<info>
<custgroup>A</custgroup>
<message>cust setup created</message>
</info>
</ack>
</customer>
<customer cid="5678">
<ack id="7000" error="true">
<error>
<class>B</class>
<message>over the limit</message>
</error>
</ack>
</customer>
</custreply>
Затем у меня есть XDocument и Linq, которые прекрасно работают для следующих двух значений, мне нужны ack id и ack error:
XDocument CustResponse = XDocument.Load('path');
var custAck = from c in CustResponse.Root.DescendantsAndSelf("ack")
select new { CustId = c.Attribute("id").Value, Error = c.Attribute("error").Value
};
То, что мне также нужно, - это выбрать ErrorMessage и для ошибки, показанной выше XML, если error = "true", значение элемента "message". Как я могу получить это? Я бы также принял сообщение об ошибке «ложь», если возможно, только первый элемент сообщения в первой информации, если проще, но мне нужны в основном сообщения об элементе ошибки в моих результатах, на самом деле не нужно сообщение об ошибке «ложь».
Спасибо всем