У меня есть следующие пути:
- /моя: компания /ns 1: Аудит/ns1: Визит /ns 1: customField10
- /моя: компания /ns 1: Аудит/ns1: Визит /ns 1: ACCOUNTNUMBER
Я хочу выбрать ns1: customField10, если он не пуст, в противном случае я хочу вернуть ns1: accountNumber.
Я попробовал следующее:
xml.SelectSingleNode(
"(/my:cobius/ns1:Audit/ns1:Visit/ns1:customField10 |
/my:cobius/ns1:Audit/ns1:Visit/ns1:accountNumber)", ns)
Но он всегда возвращает accountNumber. Я попробовал перевернуть заказ customField10 и accountNumber, но без радости. Он по-прежнему возвращает номер учетной записи.
Как я могу сделать эквивалент оператора coalesce в XPath?
Update:
Здесь последний код:
xml.SelectSingleNode(
"(/my:company/ns1:Audit/ns1:Visit/ns1:customField10[normalize-space()] |
/my:company/ns1:Audit/ns1:Visit/ns1:accountNumber[not(normalize-space(../ns1:customField10))])", ns)