Мне нужно выбрать родительский узел моего XPATH.
XML
<PatientDetailsXML>
<PList>
<PName type="Patient">
<properties>
<Room bedType="Auto" />
<PName title="Joe Beom" PId="1234">
<Details>
<classification classification="paymenttype" category="Wallet" />
<classification classification="Humor" category="None" />
<classification classification="Food" category="Fruit" />
</Details>
</PName>
</properties>
<childEvents>
</childEvents>
</PName>
<PName type="Patient">
<properties>
<Room bedType="Auto" />
<PName title="John Bair" PId="1234">
<Details>
<classification classification="paymenttype" category="Found" />
<classification classification="Humor" category="None" />
<classification classification="Food" category="Vegetables" />
</Details>
</PName>
</properties>
<childEvents>
</childEvents>
</PName>
</PList>
</PatientDetailsXML>
Если мой currentnode
равен <PName type="Patient">
, 1-й в списке выше.Мне нужно найти следующий узел с помощью <classification classification="Food" category="Vegetables" />
и выбрать его заголовок в <PNAME title>
.
КОД
var testing = nodes[i].SelectSingleNode(@"following::Details/classification[@classification='Food'and @category ='Vegetables']")ParentNode.ParentNode.Attributes["title"].Value;
Если вы видите выше, я делаю .ParentNode.ParentNode
для достижения <PNAME title>
.Это работает нормально для меня.Но есть ли лучший способ сделать это.