Ich bin auf der Suche nach einer Methode, um ein Attribut eines untergeordneten Knotens aus dem übergeordneten Knoten greifen. Bisher habe ich:Wie greifen Sie ein Attribut von Kind-Knoten in XML
For each dataNodedsd in xmlDocBindings.SelectNodes("//dataobject")
nodesDsdID = dataNodedsd.getAttribute("objectid")
set parentNode = dataNodedsd.parentNode
if d.Exists(nodesDsdID) Then
d.item(nodesDsdID) = parentNode.getAttribute("ID")
paramstr = parentnode.selectsinglenode("property[@name='pointrefparamname']").text
msgbox paramStr
d2key = parentNode.getAttribute("ID")
'add ids to dict2
d2.add d2key, ""
End If
Ich bin derzeit auf der Suche nach paramstr aus dem übergeordneten Knoten zu ziehen. Mein aktueller Versuch war die Verwendung des Codes zur Verfügung gestellt
paramstr = parentnode.selectsinglenode("property[@name='pointrefparamname']").text
Allerdings kann ich nicht richtig die Zeichenfolge aus dem Knoten ziehen.
Dies ist ein Beispiel von XML, die ich von dem Knoten zu ziehen versucht bin:
<dataobject format="propertybag" type="HMIPage.Generic" id="3">
<property name="AddressFlags">1</property>
<property name="AddressType">0</property>
<property name="CalloutElement"/>
<property name="ObjectType">0</property>
<property name="ParameterFormat">0</property>
<property name="PointRefFlags">0</property>
<property name="PointRefParamName">PIDA.MODEFL.CAS</property>
<property name="PointRefParamOffset">0</property>
<property name="PointRefPointName">00FC1627</property>
<property name="PresentationType">0</property>
<property name="SecurityLevel">0</property>
<property name="UpdatePeriod">0</property>
<property name="version">1.3</property>
</dataobject>
ich von
<property name="PointRefParamName">PIDA.MODEFL.CAS</property>
und erhalten das Ergebnis
ziehen würde einfach versuchen,PIDA.MODEFL.CAS
als eine Zeichenfolge. Bisher hat alles, was ich nachgeschlagen habe, entweder nicht funktioniert (entweder wegen meiner Inkompetenz/meines Missverständnisses oder wegen des Mangels an praktikablen Methoden. Wenn jemand das klären könnte, wäre es sehr geschätzt. Ich versuche wieder einmal, ein Attribut von einem zu bekommen Kind-Knoten innerhalb eines übergeordneten Knoten.
nicht sicher, ob dies das Problem ist, aber in dieser Zeile nodesDsdID = dataNodedsd.getAttribute ("objectid") ... es gibt kein Attribut "objectid" auf dem "dataobject" -Tag. –
Es ist nur extra Code von einem anderen r XML, das ich Informationen ziehen und mit diesem XML vergleichen musste –
Als nächstes sehe ich, dass Sie für "pointerrefparamname" vergleichen, aber der Name ist eigentlich "PointRefParamName" ... Fall ist in XML wichtig –