ASP.NET - вызов веб-службы с помощью SOAP

Я довольно давно занимаюсь программированием на .NET и C #, но это моя первая попытка сделать что-нибудь с его помощью в Интернете. Мне нужно вызвать веб-службу SOAP, URL-адрес которой я знаю, и вызвать методы этой службы. Я установил его как «Веб-ссылку» в своем проекте, однако теперь я не уверен, как вызывать методы службы. Я гуглил это в течение последнего часа, пытаясь выяснить, что мне нужно сделать, но, судя по результатам, которые я вижу, это сложная / запутанная вещь (и я знаю, что это не совсем так)!

Может ли кто-нибудь показать мне простой пример кода для вызова методов в некоторой общей веб-службе, которую вы настроили в качестве веб-ссылки, ИЛИ указать мне на достойный учебник, который это делает? Я думаю, учитывая мой опыт использования C # и .Net в прошлом, этот проект не будет проблемой, как только я смогу разобраться в этой части ...

Заранее спасибо!


person JToland    schedule 23.01.2012    source источник
comment
После добавления веб-ссылки вы смогли найти пространство имен, в котором живет веб-сервис?   -  person OnResolve    schedule 23.01.2012


Ответы (2)


Когда вы успешно добавили веб-ссылку, Visual Studio сгенерировала набор кода, который обертывает типы и методы, предоставляемые службой. Посмотрите на эти файлы, чтобы выяснить, в каком пространстве имен они находятся, и на имя фактического прокси-класса службы. После импорта пространства имен остается лишь создать экземпляр прокси и вызвать его методы.

person kprobst    schedule 23.01.2012
comment
Ага! Это создавал прокси-объект, который я не исправлял. Ну, и добавление использования ... по какой-то причине, когда я пытался это сделать, это действовало не так, как я ожидал. Я удалил ссылку и снова добавил ее, и мне удалось создать прокси-сервер, и теперь я точно вижу, как он должен работать. Спасибо всем, кто так быстро выручил меня! ОЧЕНЬ много времени потрачено на Google! - person JToland; 23.01.2012

Вы будете вызывать методы веб-сервисов так же, как и любой объектный метод. Потому что .net framework создала для вас все необходимые классы. При добавлении веб-ссылки VS IDE запрашивает имя, это имя является корневым пространством имен для доступа к именам связанных методов.

person kochobay    schedule 23.01.2012