Hintergrund - Anwendung von Visual Studio 2010, C #, .NET Framework 4.0
Ich habe eine Website, die XML empfängt und auf dieser XML-Basis basiert. Ich muss zusätzliche Verarbeitung auslösen.
Ich erhalte folgendes XML (ich habe es auf ein minimales XML gekürzt)
<Event xmlns="http://www.mysite.com" et="a">
<audit>
<cb>foo</cb>
</audit>
</Event>
Ich habe den folgenden XPath verwendet, um zu sehen, ob das Dokument für die zusätzliche Verarbeitung übereinstimmt. (Überprüfen, ob ich "Event" -Knoten zurückbekomme).
//std:Event[@et="a"]
Wo ich gekämpft habe, ist, dass ich alle Event-Knoten finden muss, bei denen das et-Attribut "a" ist und der audit / cb-Knoten den Wert "foo" hatte.
Hier kämpfe ich ... Kann mir jemand helfen?
Antworten:
3 für die Antwort № 1Ich bin nicht sicher über C # und .NET, aber in reiner XPath-Syntax glaube ich:
//Event[@et="a"]/audit[cb="foo"]/..
Überprüfen Sie die Xpath-Syntax unter: http://www.w3schools.com/XPath/xpath_syntax.asp
0 für die Antwort № 2
Kein .NET-Benutzer selbst, aber probieren Sie Folgendes:
//Event[@et="a" and audit/cb = "foo"]