Realizziamo il nostro applicativo, in grado di connettersi ad un web service attraverso il canale http, leggere il documento wsdl e comunicare attraverso il protocollo soap.
Se hai perso i precedenti articoli ti consiglio di leggerli, questi sono i link:
Dopo una ricerca su internet ho trovato un web service semplice, che ho pensato potesse esserci d’aiuto nella realizzazione del nostro piccolo progetto. E’ una web application che restituisce la temperature delle città desiderate; è sufficiente passare al web service il nome della città e della nazione per ricevere come risposta una serie di informazioni formattate xml tra cui è presente anche la temperatura.
WEB SERVICE
Il nostro progetto consiste nella creazione di un’interfaccia in grado di visualizzare le temperature delle città di Milano,Venezia,Pisa e Cagliari (le ho scelte a caso) dopo la pressione di un pulsante. Per sviluppare il progetto utilizzeremo l’ambiente SharpDevelop nel linguaggio C#, i passaggi che andremo ad eseguire sono i seguenti:
1) Creazione del progetto + aggiunta della web reference + dichiarazione delle librerie sulla form
2) Creazione di una form composta da 4 etichette (nomi delle città) + 4 text box (per visualizzare temperature) + un pulsante per l’esecuzione del codice che andremo a scrivere.
3) Creazione di una breve routine associata al pulsante che ci farà connettere al servizio web e visualizzare le temperature.
4) Prova pratica del nostro progetto mandato in esecuzione.
AGGIUNTA DELLA WEB REFERENCE (REFERENCING)
Questo è l’indirizzo del documento wsdl reperito da internet attraverso google:
http://www.webservicex.com/globalweather.asmx?wsdl
La prima operazione che andremo a svolgere è quindi quella di dichiarare la web reference e di assegnargli un nome più comprensivo, cioè WSTemp (che sta per web service temperature).
CLICCA QUI PER VISUALIZZARE L’IMMAGINE (web service)
A questo punto dichiaro all’interno della form le librerie che intendo utilizzare; prima di tutto quella web appena aggiunta al progetto, inoltre in previsione di interpretare il codice xml restituito dichiaro anche la libreria “system.xml.Linq”
CLICCA QUI PER VISUALIZZARE L’IMMAGINE DELLE DICHIARAZIONI(web service)
WEB SERVICE
DISEGNO DELL’INTERFACCIA (DESIGNING)
Aggiungiamo 4 etichette per descrivere il nome della città (Milano,Venezia,Pisa,Cagliari) e formattiamole in maniera appropriata (dimensione carattere 14 e attributo grassetto).
Aggiungiamo 4 TextBox nelle quali andremo a visualizzare i risultati, formattiamole in maniera appropriata (dimensione carattere 11 e attributo grassetto) ed infine nominiamo le textbox in maniera più comprensibile (TBMilano,TBVenezia,TBPisa,TBCagliari).
CLICCA QUI PER VISUALIZZARE L’IMMAGINE DEL DISEGNO INTERFACCIA(web service)
SCRITTURA DEL CODICE (CODING)
Definiamo l’oggetto soap per il dialogo con la web application che chiameremo RetTemp. In seguito definiamo 4 stringhe che conterranno i risultati xml restituiti dalla chiamata (SMilano,SVenezia,SPisa e SCagliari).
CLICCA QUI PER VISUALIZZARE L’IMMAGINE OGGETTO E STRINGHE (web service)
Definiamo anche 4 variabili dove andremo a fare il parsing della variabile xml restituita, per poi poterle leggere ed estrarre le temperature (DocMilano,DocVenezia,DocPisa,DocCagliari).
CLICCA QUI PER VISUALIZZARE L’IMMAGINE VARIABILI PER PARSING (web service)
Per comprendere meglio cosa torna dalla nostra chiamata, visualizzo il contenuto di una delle stringhe restituite (SMilano). CLICCA QUI PER VISUALIZZARE L’IMMAGINE MessageBox (web service)
A questo punto possiamo estrarre da ogni variabile Doc il valore dell’elemento “Temperature” ed andarlo a visualizzare nella rispettiva textbox. CLICCA QUI PER VISUALIZZARE L’IMMAGINE ESTRAZIONE VALORI (web service)
ESCUZIONE DELL’APPLICAZIONE (RUNNING)
Ora se mandiamo in esecuzione l’applicazione e proviamo a fare click sul pulsante, eseguiremo la connessione al web service, visualizzeremo prima il valore della stringa SMilano ed infine vedremo visualizzate le 4 temperature richieste.
CLICCA QUI PER VISUALIZZARE L’IMMAGINE UNO (web service)
CLICCA QUI PER VISUALIZZARE L’IMMAGINE DUE (web service)
VIDEO WEB SERVICE
Se sei interessato a vedere il video (12 minuti e 30 secondi) dove realizzo in pratica quanto descritto, puoi inserire il tuo indirizzo di posta in questa form e riceverai immediatamente il link.
web service