如何找到与变量值匹配的特定节点?

时间:2019-08-12 17:34:20

标签: xml vb.net

有些人可能会说这个问题与先前的问题相似,但确实有所不同。 我有ObjXmlSimpleTypeDoc对象,它有两个EnumerationValue节点。每个EnumerationValue都有子节点。

我只想找到正确的EnumerationValue节点,该节点的@code与变量strCourtNCIC中的值匹配。在此问题中,strCourtNCIC = MN010015J。 对于这个问题,strCourtNCIC的值为MN010015J。

如何在VB.NET中执行此操作?即使我希望看到带有@code = MN010015J

的节点,我的VB.NET代码也不会为objXmlEnumerationValueNode返回任何内容。

如何更改我的VB.NET代码行以使用与strCourtNCIC值匹配的@code查找EnumerationValue节点?

这是对象ObjXmlSimpleTypeDoc

<SimpleTypeCompanion enumerates="CourtLocationTextType">
    <EnumerationValue code="MN010015J">
        <Text>Emily County</Text>
        <AssociatedValue type="MNCISNodeID">
            <Text>111</Text>
        </AssociatedValue>
        <AssociatedValue type="CountyName">
            <Text>Emily</Text>
        </AssociatedValue>
        <AssociatedValue type="PhoneNumber">
            <Text>724-820-7123</Text>
        </AssociatedValue>
    </EnumerationValue>
    <EnumerationValue code="DC19DAKDC">
        <Text>Pope County</Text>
        <AssociatedValue type="MNCISNodeID">
            <Text>112</Text>
        </AssociatedValue>
        <AssociatedValue type="CountyName">
            <Text>Pope</Text>
        </AssociatedValue>
    </EnumerationValue>
</SimpleTypeCompanion>

这是我需要帮助的VB.NET代码,以获取与strCourtNCIC(MN010015J)相匹配的正确EnumerationValue。

    'CourtNCIC 
strCourtNCIC = objXmlMNCISData.DocumentElement.SelectSingleNode("Case/Court/CourtNCIC").InnerText
'Access the CourtLocationTextType simple type. 
objXmlSimpleTypeDoc = Msc.Integration.CourtXml.Library.v4.SimpleType.GetCompanionFile("CourtLocationTextType")
'Get the correct EnumerationValue node that has @code =MN010015J string value
objXmlEnumerationValueNode = objXmlSimpleTypeDoc.SelectSingleNode("/SimpleTypeCompanion/EnumerationValue[@code=" + strCourtNCIC + "]/@code")

1 个答案:

答案 0 :(得分:0)

这是我的解决方案。就是在值周围缺少单引号的情况!

objXmlEnumerationValueNode = objXmlSimpleTypeDoc.SelectSingleNode("/SimpleTypeCompanion/EnumerationValue[@code='" + strCourtORI + "']")