【问题标题】:How to Capture Soap Web Service Output In VB.Net Console App如何在 VB.Net 控制台应用程序中捕获 Soap Web 服务输出
【发布时间】:2013-04-10 13:23:53
【问题描述】:

我有一个包含 3 个 Web 服务(不需要输入参数)的 Web 服务项目,但我需要安排每晚调用一次。为了实现这一点,我做了一些谷歌搜索并创建了一个控制台应用程序来调用 Web 服务,我现在应该能够使用 Windows 任务计划程序进行计划。 我是编写控制台应用程序的新手,对 VB.NET 只有一点点经验,但通过输入对 Web 服务的 Web 引用,然后应用以下简单代码,我在控制台应用程序中实现了我需要的功能:

Sub Main()

Dim wscall As New EmployeeEmailWS

wscall.UpdateAbsenceTables()
wscall.GetThreePeriodsInAYear()
wscall.GetSixDaysInAYear()

End Sub

这只是触发三个 Web 服务成功运行。

然而,到目前为止,我真的很想以某种方式读取 Soap Web 服务响应,以便我可以将它作为每个结果的日志写入数据库。

响应消息很简单(来自SoapUI),但我只是不知道如何获取它:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<UpdateAbsenceTablesResponse xmlns="http://www.ernspnamespace7.co.uk/EmployeeWS">
<UpdateAbsenceTablesResult>
<ResponseCode>00001</ResponseCode>
<ResponseDescription>Absence Tables Successfully Updated</ResponseDescription>
</UpdateAbsenceTablesResult>
</UpdateAbsenceTablesResponse>
</soap:Body>
</soap:Envelope>

任何人都可以为我指出正确的方向,以了解如何在我的控制台应用程序中获取此响应。特别是如果我能以某种方式获取 ResponseCode 和 ResponseDescription 的值并将它们转换为字符串,那么我将回到熟悉的领域来了解我的基本知识。

谢谢。

【问题讨论】:

  • 附加信息。不知道是否相关,但我使用的是 Visual Studio 2008。

标签: vb.net soap service web


【解决方案1】:

没关系。 我突然想到,我可以在 Web 服务的末尾添加一些代码,以便在每次调用它们时将它们的输出写入数据库表。这完全避免了使用 XML 的麻烦。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多