Ho endpoint definiti in un file di configurazione con un nome di dominio "falso". L'idea è che ciò renderebbe la distribuzione più semplice, poiché invece di modificare i file di configurazione, impostiamo semplicemente l'indirizzo IP del nome di dominio "falso" nei file degli host degli ambienti. Così, per esempio, sulla mia macchina dev locale, avrei una voce nel file hostsPerché gli endpoint WCF ignorano il file hosts?
127.0.0.1 fake.domain
e su un ambiente di accettazione degli utenti che potrebbero avere
192.45.34.31 fake.domain
ma nel mio file di configurazione vorrei solo avere l'endpoint
<endpoint address="http://fake.domain/someServiceBase/SomeService.svc" ... />
Tuttavia, WCF sembra ignorare completamente il file hosts. Posso copiare l'indirizzo in un browser e verrà visualizzato correttamente, ma il client WCF (che si trova nella casella dev locale) restituirà un errore "host non trovato".
Perché WCF ignora il file host?
Edit: Nota aggiuntiva, tutto funziona se sostituisco l'indirizzo endpoint per utilizzare l'indirizzo IP reale direttamente nel file di configurazione, ad esempio,
<endpoint address="http://127.0.0.1/someServiceBase/SomeService.svc" ... />
A meno che la stessa WCF non esegua tale reindirizzamento, quindi no. I servizi coinvolti non fanno alcun reindirizzamento. Inoltre, se sostituisco l'indirizzo dell'endpoint con l'indirizzo IP effettivo, tutto funziona. – Nathan