Aggiungere web references a run-time

domenica 16 settembre 2007 - 17.10

JordanR Profilo | Newbie

Buongiorno a tutti,

sto sviluppando per un esame universitario un applicazione distribuita basata su WebServices, tecnologia alla quale mi avvicino per la prima votla. Utilizzo Visual Studio 2005 e C#. Cercherò di astrarre l'architettura per illustrare il mio problema.

Ci sono 3 "parti" in gioco: ServerCentrale, Client1 e Client2.
ServerCentrale espone un WebService a client1 e client2, ai quali aggiungo in fase di progettazione il web reference.
ServerCentrale esegue in unica istanza, mentre Client1 e Client2 sono applicativi eseguiti da più utenti.

Client1 semplicemente consuma i webmethods di ServerCentrale.

Client2 consuma webmethods di ServerCentrale, ma a sua volta pubblica un WebService a cui deve far riferimento il ServerCentrale il quale si pone come smistatore delle richieste dei Client1 ai Client2.
Inoltre, Client2 si "registra" al ServerCentrale - usando un apposito metodo di quest'ultimo ServerCentrale.Registrazione(...) - specificando le proprie informazioni e l'URL in cui si trova il proprio WebService.

Il problema è che queste registrazioni avvengono a run-time, e non so come creare contestualmente all'invocazione di ServerCentrale.Registrazione(...) i riferimenti web ai vari Client2.
Sebbene non ho alcuna idea su come risolverlo, sono convinto che si tratti di una "banalità" perchè ogni utente Client2 espone lo stesso tipo di WebService, solo che il ServerCentrale deve avere riferimento a un numero multiplo e variabile di istanze di questo WebService (il cui URL è noto solo al momento della registrazione di ogni Client2).

Ringrazio in anticipo chiunque vorrà rispondermi e darmi una mano :)
Ciao!


Edit 1:
Ho letto che potrei aggiungere a design-time il web rference modificandone manualmente il costruttore in Reference.cs in modo da passargli l'url come parametro a runtime. Sembrerebbe la soluzione al mio problema, MA... se io aggiungo un web reference ad un progetto che è un ASP.NET WebSite anzichè una normale Application, il file Reference.cs non viene creato... help!!

Brainkiller Profilo | Guru

>Ho letto che potrei aggiungere a design-time il web rference
>modificandone manualmente il costruttore in Reference.cs in modo
>da passargli l'url come parametro a runtime. Sembrerebbe la soluzione
>al mio problema, MA... se io aggiungo un web reference ad un
>progetto che è un ASP.NET WebSite anzichè una normale Application,
>il file Reference.cs non viene creato... help!!

Prova a leggere questo Tip:
http://www.dotnethell.it/tips/DynWebServices.aspx

Ciao

David De Giacomi | Microsoft MVP
http://blogs.dotnethell.it/david/
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5