Chcę ograniczyć moje wyszukiwanie węzła podrzędnego do bieżącego węzła, w którym się znajduję. Na przykład, mam następujący kod:Składnia XmlNode.SelectSingleNode do wyszukiwania w węźle C#
XmlNodeList myNodes = xmlDoc.DocumentElement.SelectNodes("//Books");
foreach (XmlNode myNode in myNodes)
{
string lastName = "";
XmlNode lastnameNode = myNode.SelectSingleNode("//LastName");
if (lastnameNode != null)
{
lastName = lastnameNode.InnerText;
}
}
chcę element Nazwisko być przeszukiwane od wewnątrz bieżącego mój_węzeł wewnątrz foreach. Co się dzieje, to że znalezione Nazwisko jest zawsze z pierwszego węzła z moimi węzłami. Nie chcę kodować dokładnej ścieżki do LastName, ale zamiast tego pozwolić jej być elastyczną, jeśli chodzi o to, gdzie wewnątrz mojegoNode zostanie znaleziony. Myślałem, że przy użyciu metody SelectSingleNode w myNode ograniczyłoby wyszukiwanie tylko do zawartości xml w moimNode i nie obejmuje węzłów nadrzędnych.
z „” działało świetnie. Czy wiesz, gdzie można znaleźć tę składnię? Szukałem tego rodzaju informacji i znalazłem "//", ale nie "." Myślę, że jest inna składnia, której mogę użyć. – user31673
[Składnia XPath] (http://www.w3schools.com/xsl/xpath_syntax.asp) –
Zaktualizowany odnośnik do składni XPath, do której dodano @bobo.ezhe: https://www.w3schools.com/xml/xpath_syntax.asp – PolyTekPatrick