2009-06-29 21 views
7

Ho un servizio web su un host remoto che devo richiamare dalla classe ASP.NET/C#. Qual è il modo più semplice di chiamare un metodo tramite SOAP, dato l'URL WSDL e una firma del metodo?Il modo più semplice di richiamare un servizio web via SOAP su ASP.NET

Dato: WSDL URL come stringa (disponibile solo in fase di esecuzione, cioè variabile) firma del metodo (costante)

necessità di: Creare un client SOAP ed eseguire chiamata di metodo.

risposta

4

Vedi qui: http://msdn.microsoft.com/en-us/library/d9w023sx.aspx

È molto facile in Visual Studio - è sufficiente aggiungere l'URL di riferimento web e genera lo stub proxy per voi.

+2

-1: non passare a "Aggiungi riferimento Web" finché non si è bloccato su .NET 2.0 e non è possibile utilizzare WCF. Altrimenti potresti condannarlo a vivere nel passato senza una buona ragione. –

+1

La domanda menzionata "semplice". Questo è il modo più semplice :) Inoltre, l'utilizzo di WCF è estremamente simile: si utilizza semplicemente "Aggiungi riferimento servizio" invece di aggiungere "Riferimento Web". Una buona panoramica è qui: http://blog.mstern.at/index.php?/archives/64-Creating-a-WCF-web-service-in-C-using-Visual-Studio-2008.html – rifferte

+0

buon articolo - grazie! Tuttavia, cosa succede se I WSDL sono disponibili solo in fase di runtime? –

6

La cosa più semplice da fare è utilizzare semplicemente "Aggiungi riferimento servizio" e puntare al WSDL. Genererà le classi proxy per te, compreso un metodo proxy che dovrebbe corrispondere alla firma del metodo che ti è stata data.

Vedi se trovi How to Consume a Web Service essere utile.

Problemi correlati