2010-12-08 6 views
2

Learning WCF (je sais, retard à la fête)WCF, IIS et Endpoints

Je travaille dans la programmation du livre de WCF Juval Lowy. Je vois que je peux configurer plusieurs points de terminaison (y compris les URI) pour mon service.

Cependant, lorsque je les héberge dans IIS, seul l'emplacement du fichier .svc semble important. Est-ce que les points de terminaison/adresses multiples sont uniquement applicables si vous vous hébergez vous-même? Ai-je manqué quelque chose à propos des services d'hébergement dans IIS?

+0

J'ai parcouru le même livre et me suis demandé exactement la même chose. –

Répondre

2

"que l'emplacement du .svc", vous vous dirigez à cela parce que baseaddress sont fournis par IIS en cas d'hébergement Web (IIS hébergement) sauf si vous utilisez CustomServiceHostFactory. Ensuite, quelle que soit la valeur que vous fournissez dans l'adresse, sont ajoutés à l'adresse de base (.svc/..)

+0

Donc, si vous n'utilisez pas CustomServicehostFactory, les adresses ne font pas de différence côté serveur? –

0

a besoin de vous donner plusieurs nom d'hôte dans IIS pour le même WCF et définir plusieurs points d'extrémité dans la section client de web.config comme:

<client> 
     <endpoint address="hostname1/myservice.svc" ... /> 
     <endpoint address="hostname2/myservice.svc" ... /> 
     <endpoint address="hostname3/myservice.svc" ... /> 
    </client> 

Ensuite, vous pouvez les consommer: hostname1/myservice .svc hostname2/myservice.svc hostname3/myservice.svc