Pour répondre à ces question :
Nous avons couru quelques tests et nous avons trouvé
que lorsque nous ajoutons des liaisons dans
IIS, il n'a pas de mise à jour de fichier de configuration
notre service. Cela signifie que nous
nécessité de maintenir la configuration dans
deux endroits différents. Il n'est pas logique,
droit ?
Lorsque vous utilisez IIS pour héberger votre service, vous devez configurer votre Application.fichier de config ou web.fichier de configuration permettant d'IIS pour exposer certaines de liaison, de sorte que dans votre fichier de configuration, vous mettez tous vos contraignantes vous permettez à votre service wcf. Http, net.tcp etc...
Dans votre affectation vous sera pas spécifié d'adresse, parce que vous aurez spécifié ceux adresse dans IIS directement.
Dans IIS, vous devez autoriser la liaison disponibles dans les paramètres avancés de votre site web. Après que vous avez mis de liaison pour votre site web "web service" et ajoutez tous les liens que vous souhaitez écouter, et préciser l'adresse.
Vous devrez indiquer l'adresse directement dans IIS.
Il y a un exemple.
Votre fichier de configuration:
<services>
<service name="ServiceName">
<endpoint address=""
binding="basicHttpBinding"
bindingConfiguration="httpMode"
contract="IContract" />
<endpoint address=""
binding="netTcpBinding"
contract="IContract" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
Dans votre IIS advenced réglage de votre volonté de mettre
http,net.tcp en charge les Protocoles
Après cela, vous allez dans votre liaison dans IIS. Mettez votre liaison pour http normalement et ajouter une nouvelle liaison net.tcp, dans la configuration de liaison mis le port et le répertoire virtuel comme
8001:*
Ce paramètre autoriser toutes les connexions sur le port 8001 pour n'importe quel répertoire virtuel.
Vous devez également avoir la fonction "Activation de windows communication foundation (Http activation et de la Non-Activation Http)" installés sur votre serveur.