Quote Originariamente inviata da mmjc23 Visualizza il messaggio
Buongiorno di nuovo a tutti

...Alla fine sono riuscito a deserializzare; non ho capito da cosa fosse dovuto, probabilmente ad un errore (uno spazio, un "a capo" o qualcosa del genere nel file XML).
Il programma, quindi funziona correttamente.

Ora, però, ho la necessita di dovermi per forza connettermi al WSDL del servizio Web esposto; il problema è come passare le credenziali UserToken presenti nell'header della request SOAP al servizio.
Utilizzando il Framework 4.0 e VS2010, ho importato il riferimento al Servizio ma non c'è verso di riuscire a connettersi (passando la login di accesso) e ottenere una risposta.
Il servizio esposto, viene interamente descritto qui: http://www.mit.gov.it/mit/mop_all.php?p_id=25548

In alternativa...
Per il momento, sono riuscito ad inoltrare correttamente una richiesta al servizio costruendomi manualmente il "payload" (contenente un Header con Username e Password) da inoltrare mediante una "HttpWebRequest", ma poi, ottengo in risposta una "HttpWebResponse".
Sapendo qual'è l'oggetto ritornatomi in risposta dal WebService...è possibile, secondo voi, convertire una "HttpWebResponse" (ottenuta mediante il metodo "GetResponse" della "HttpWebRequest") nella classe del Web Service che mi aspetto in risposta e che ho a disposizione avendo importato il riferimento al WSDL del servizio?

Io ho provato a fare il cast/Ctype di "rq.GetResponse" nell'oggetto che mi aspetto e definito nel "Reference.vb" del servizio web importato...ma, ovviamente, non funziona...
Grazie
Ciao, ipotizzo che usi WCF.

non ho tempo per studiarmi il servizio, ma ti segnalo diverse starde per ottenere il tuo risultato.

1) tieni presente che esistono diversi tipi di binding e può essere che qualcuno faccia già al caso tuo

2) intercetti il messaggio in uscita e gli aggiungi l'header di sicurezza; parti da qua :
https://msdn.microsoft.com/en-us/lib...v=vs.100).aspx

3) il metodo più flessibile (ma anche più complicato) è implementare un Message Inspector;
non avrai difficoltà a trovare esempi in rete.

4) Personalmente non la userei, ma può funzionare anche l'alternativa che hai messo su
costruendoti la request a manina; ... rifletti sul fatto che concettualmente non c'è differenza tra la deserializzazione già fatta dell'errore e quella che devi fare ora.

HTH