Visual Studio使调用Web服务变得容易,试图弄清楚幕后发生的事情很困难。

如何在调用Web服务时看到我的.Net应用程序生成的实际XML?

有帮助吗?

其他提示

MSDN示例实现SOAP的TraceExtension的代码;您可以使用原样或修改来登录任何您想要的内容(我使用数据库并保留它不仅用于调试,而且用于存档所有通信以供日后使用)。

对于SOAP Web服务调用,我发现 SoapUI 非常有用。它可以连接到WSDL来获取方法定义,创建骨架包络来调用这些方法,并且可以在调用后看到完整的结果。

在Visual Studio之外,您可以使用Fiddler工具查看请求和响应中包含的内容。

在Visual Studio中,您可以做的一件事就是将DataSet写入文件。

myDataSet.WriteXml(filename);

这是另一个如何在Visual Studio中执行此操作的示例。所有这一切都是从Web服务获取响应并将其保存到您指定的文件中:

Dim url As String = "http://web.service.com/"
Dim request As WebRequest = WebRequest.Create(url)
Dim response As WebResponse = request.GetResponse()
Dim stream As Stream = response.GetResponseStream()

Dim xmlDoc As XmlDocument = New XmlDocument
xmlDoc.Load(stream)
xmlDoc.Save("C:\Temp\foo.xml")

使用 Fiddler 的建议足以让我的IT团队参与进来。他们已经在网络服务器上安装了 WireShark 类似程序的副本。

不是很精通网络,我最初认为我可以看到从我的电脑向网络服务提出的请求。那没用。在进入网络服务器时监控请求确实给了我http头和肥皂信封的结构。

感谢所有回复。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top