307 messaggi dal 07 aprile 2003
Ciao a tutti, sto lavorando in un progetto dove dovrò fare intensivo uso di WCF. Il problema che mi si è posto subito è che mi serve consocere l'Host dove è ospitato il service. Ad esempio: se il dominio dove è presente il WCF è http://pippo avrò una determinata stringa di connessione mentre se il dominio è http://topolino avrò una diversa stringa. Non vorrei usare AspNetCompatibility perchè vorrei mantenere il funzionamento di default.

Come fare secondo voi?

Ciao!
Secondo me è un problema che risolvi a livello di configurazione, impostando all'interno del web.config la stringa di connessione corretta a seconda dell'ambiente di deploy.

m.
307 messaggi dal 07 aprile 2003
qusto già lo faccio da tempo nell'applicazione vera e propria e non nel WCF. nell'applicazione consumo diversi wcf service, locali o live, proprio in base all'host. Il problema sta invece nel wcf: senza voler utilizzare la AspNetCompatibility e senza passare parametri, come faccio a riconoscere l'host in un wcf service? HttpContext ed HttpRequest non fungono e quindi non posso utilizzare neanche .IsLocal
Guarda, con OperationContext.Current.Host recuperi alcune informazioni (tra cui, ad es. il BaseAddress del tuo servizio).

Sta di fatto che continuo a non capire cosa tu voglia fare, ma questa è un'altra storia

m.
307 messaggi dal 07 aprile 2003
estremamente semplice: nel wcf service eseguo delle operazioni su un database. se il wcf sercvice è sul mio computer locale (ad es. http://local) la stringa di connessione è una mentre se il wcf service è in un live server la stringa di connessione sarà altra. ovviamente le stringhe di connessione sono salvate nel web.config, sezione <connectionstrings>. Per questo motivo mi serve conoscere l'host. Pensi ci possa essere una diversa soluzione?
Sì, che sul tuo pc locale metti una (e una sola) stringa di connnessione, in produzione metti l'altra, sempre con la medesima chiave, così non cambi una riga nel codice, i file di config servono proprio a questo. IMHO ha poco senso metterle entrambe e puntare a una o all'altra a seconda dell'host.

Cmq, se vuoi continuare con il tuo approccio, no prob... Con OperationContext dovresti riuscire a recuperare l'host.

m.
307 messaggi dal 07 aprile 2003
Hai avuto perfettamente ragione: con OperationContext funziona tutto a meraviglia. Grazie per l'aiuto!

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.
In primo piano

I più letti di oggi

Media
In evidenza
MISC