9

Visual Studio упрощает вызов веб-службы, пытаясь понять, что происходит под обложками.XML От вызова веб-службы

Как я могу увидеть фактический XML, созданный из моего. Net-приложения, когда вы звоните в веб-службу?

ответ

1

Вне Visual Studio, вы можете использовать инструмент Fiddler, чтобы увидеть именно то, что содержится в запросах и ответах.

Внутри Visual Studio вы можете просто записать DataSet в файл.

myDataSet.WriteXml(filename); 
3

MSDN Example code, который реализует TraceExtension для SOAP; Вы можете использовать as-is или изменить для входа в то, что вы хотите (я использовал БД и сохранил его не только для отладки, но и для архивации всех сообщений для последующего использования).

1

Вот еще один пример того, как вы можете это сделать в Visual Studio. Все это делает забираете ответ от веб-сервиса и сохранить его в файл вы указываете:

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") 
0

предложение использовать Fiddler было достаточно для меня, чтобы получить свою ИТ-команды на борту. У них уже была копия аналогичной программы WireShark, установленной на веб-сервере.

Не будучи очень сообразительным в сети, я изначально думал, что могу следить за запросами, сделанными с моего компьютера, на веб-сервис. Это не сработало. Запросы на мониторинг, когда они приходили на веб-сервер, дали мне структуру заголовка http и конверта с мылом.

Спасибо за все ответы.

2

Для вызовов веб-службы SOAP я нашел SoapUI, чтобы быть чрезвычайно полезным. Он может подключаться к WSDL, чтобы получить определения метода, создать скелетные конверты для вызова этих методов, и после вызова вы сможете увидеть полноценный результат.