selectSingleNode与Soap Response VB6失败

时间:2014-08-27 22:21:02

标签: soap vb6

我在许多其他项目中使用了相同的代码并且没有任何问题,但由于某种原因它在这里不起作用。每次我到达"如果不是.selectSingleNode(strNode)是什么都没有"它什么都没有回来,让我把它扔到别的地方。我已经能够验证下面列出的返回的XML以及正在读取它的代码块。

不幸的是,我必须在VB6中开发它以保持与其他产品的兼容性。

守则如下:

With objXMLResponse
    Dim strNode As String
    strNode = "//PingResponse/PingResult/ResultCode"
    If Not .selectSingleNode(strNode) Is Nothing Then
        If .selectSingleNode(strNode).Text = "Success" Then
            MsgBox "We have succeded", vbOKOnly
        Else
            MsgBox "We have failed", vbOKOnly
        End If
    Else
        MsgBox "We have failed", vbOKOnly
    End If
End With

肥皂反应如下:

<?xml version="1.0" encoding="UTF-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <PingResponse xmlns="http://avatax.avalara.com/services">
         <PingResult>
            <TransactionId>784293066</TransactionId>
            <ResultCode>Success</ResultCode>
            <Version>14.5.0.53</Version>
         </PingResult>
      </PingResponse>
   </s:Body>
</s:Envelope>

提前感谢您提供任何帮助。

1 个答案:

答案 0 :(得分:0)

我有下面的代码并且它的工作正常(我正在使用你提供的数据样本点击&#34;我们已经成功了#34;消息)

您是否忘记加载XML文件? 您的代码未指定如何加载XML数据。如果从文件加载,您是否可以访问它?

Option Explicit

Private Sub Command1_Click()

    Dim objXMLResponse As New MSXML2.DOMDocument
    Dim success As Boolean

    success = objXMLResponse.Load("C:\Temp\123.txt")
    If success Then
        With objXMLResponse
            Dim strNode As String
            strNode = "//PingResponse/PingResult/ResultCode"
            If Not .selectSingleNode(strNode) Is Nothing Then
                If .selectSingleNode(strNode).Text = "Success" Then
                    MsgBox "We have succeded", vbOKOnly
                Else
                    MsgBox "We have failed", vbOKOnly
                End If
            Else
                MsgBox "We have failed", vbOKOnly
            End If
        End With
    Else
        MsgBox "Error loading XML file"
    End If
End Sub