Domanda Passare dinamicamente al percorso URL di riferimento del servizio Web WCF tramite il file di configurazione


Come si cambia dinamicamente il percorso dell'URL di riferimento del servizio Web WCF attraverso il file di configurazione?


44
2018-02-18 00:11


origine


risposte:


Vuoi semplicemente sostituire l'URL che è nella configurazione in un URL diverso. Supponi di avere un servizio di test e un servizio dal vivo. Puoi farlo solo

client.Endpoint.Address = new EndpointAddress(Server.IsLiveServer() ?
    @"LiveUrl" : @"TestURl"); 

Dove quegli url vengono da dove vuoi


75
2018-02-18 00:16



Solo per espandere la risposta di Erin: -

MyClient client = new MyService.MyClient();
client.Endpoint.Address = new EndpointAddress(new Uri("insert new url here"),
    client.Endpoint.Address.Identity, client.Endpoint.Address.Headers);
client.Open();

HTH!


22
2017-07-14 09:24



Non c'è commutazione dinamica. Ogni volta che si desidera utilizzare un altro URL, è necessario creare una nuova istanza di proxy del servizio (client) e passare EndpointAddress o il nome della configurazione enpoint al costruttore.


4
2018-02-18 00:19



certo che puoi farlo, dai un'occhiata qui: Come configurare i client per un servizio wcf?

è assolutamente normale puntare a localhost in fase di sviluppo e modificare l'indirizzo (url) in produzione nel web.config


0
2018-02-18 00:15