Я импортировал WSDL, что теперь? - PullRequest
4 голосов
/ 11 февраля 2011

Новичок веб-службы ... Пожалуйста, потерпите меня.

Мне дали файл WSDL для импорта в мой проект vb .NET. Я понимаю, что это контракт, который должен сказать мне, как использовать соответствующий веб-сервис. Вот в чем заключается моя проблема. Я вижу все виды классов, свойств, интерфейсов и т. Д. В импортированном справочнике услуг. Ничто не говорит мне, что «если у вас есть X, Y и Z в качестве входных данных, вызовите эту функцию, чтобы вернуть W».

Риск звучать слишком расплывчато, что именно я должен искать, что говорит мне, как я должен использовать это? Как узнать, из каких функций вызывать и из каких классов их вызывать? Должен ли я ожидать, что с WSDL будет предоставлена ​​некоторая документация или для этого достаточно, чтобы я посмотрел на нее и сказал: «Ах, вот как это используется!»

Я прочитал различные учебные пособия по WSDL в Интернете, и они дали мне базовое понимание (я думаю ...?). Я где-то что-то упустил, и я действительно уверен, где.

Спасибо за любую помощь.

Ответы [ 3 ]

2 голосов
/ 11 февраля 2011

Созданные классы просты в использовании.

По сути, у вас будет один клиентский класс, и в этом классе один метод для каждой конечной точки / операции, объявленной в WSDL.
Кроме того,должен быть один класс для каждого сложного типа, определенного в части XSD (объект входного аргумента операции и объект результата результата).

Затем вы можете вызывать свой WS способом, аналогичным следующему (упрощенному) примеру.

Try
    Dim service As New MyServiceRef.MyServiceClient()
    service.Open()

    Dim output As MyServiceRef.myCallResponse
    Dim args As New MyServiceRef.myCallRequest

    args.arg1 = 1
    args.arg2 = "A"

    output = service.myCallRequest(args)
    ...
Catch ex As Exception
    treat ( ex )
End Try
1 голос
/ 11 февраля 2011

WSDL скажет вам или, что лучше, библиотеке SOAP, как установить связь с сервером SOAP. Сервис SOAP может быть интерфейсом для получения данных практически для всего.

Однако, если имена функций и параметры не названы правильно, может быть очень расплывчато, какие данные вы будете отправлять службе SOAP и каков будет ответ.

В большинстве случаев это должно быть задокументировано. Вы должны получить эти документы или узнать, что сервис на самом деле делает от поставщика услуг. WSDL не предназначен для потребления человеком. Хотя, если вы пишете свой собственный XML, то да, вам нужно обратить внимание на WSDL. Если библиотека создает XML для вас, она обычно работает с WSDL, чтобы выяснить, как структурировать XML и прочитать ответ.

0 голосов
/ 11 февраля 2011

Когда вы добавляете ссылку на веб-сервис, он создает прокси для вызова веб-методов на сервере. Здесь - это простое руководство по использованию веб-сервисов в VB.NET

.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...