Pas de point de terminaison de l'écoute au net.tuyau d'exception

J'ai beaucoup de services WCF et j'ai besoin d'appeler un service d'un autre. J'ai décidé d'utiliser netNamedPipeBinding à cette fin.

De mon site web.fichier de configuration ressemble à ceci. (Je n'ai pas copié chose sans pertinence ici.)

 <services>
          <service             name="Services.AuthorizationService"    >
            <endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" >
            <endpoint
              name="AuthorizationService"
              address=""
              binding="basicHttpBinding"               contract="ServiceContracts.IAuthorizationService" />
            <endpoint address="net.pipe://localhost/TestSite/AuthorizationService.svc"
                   binding="netNamedPipeBinding"                   contract="ServiceContracts.IAuthorizationService"
                   name="AuthorizationNamedPipeEndpoint"/>           
          </service>
</Services>

Le client dans la section web.fichier de configuration ressemble à ceci:

<client>
      <endpoint address="net.pipe://localhost/TestSite/AuthorizationService.svc"
       binding="netNamedPipeBinding"            contract="ServiceContracts.IAuthorizationService" name="AuthorizationServiceNamedPipe" />
    </client>

Je suis en train d'appeler l'un de l' OperationContracts (GetDetails) comme ceci:

  using (ChannelFactory<IAuthorizationService> authorizationChannel = new ChannelFactory<IAuthorizationService>("AuthorizationServiceNamedPipe"))
                        {
                            IAuthorizationService authorizationService = authorizationChannel.CreateChannel();
                            var response = authorizationService.GetDetails(new GetDetailsRequestMessage());
                        }

Lorsque j'exécute ce code, j'obtiens l'exception à la ligne, j'invoque la OperationContract GetDetails:

Il n'y a pas de point de terminaison de l'écoute au net.tuyau://localhost/TestSite/AuthorizationService.svc que peut accepter le message. Cela est souvent causé par une mauvaise adresse ou du SAVON d'action. Voir InnerException, le cas échéant, pour plus de détails.

Je ne suis pas en mesure de trouver le problème exact. Il n'y a pas de InnerException.
J'utilise Windows7 machine et IIS version est IIS7.5. Veuillez noter que je peux appeler le service à partir de mon application Winform sans aucun problème. net.tuyau de liaison est ajoutée au site web des liaisons dans l'IIS.

Comment s'assurer que le service fonctionne correctement en utilisant le net.tuyau de transport? Dans le cas de HTTP, on peut naviguer dans internet explorer et de s'assurer qu'il.

Ce que je peux trouver, c'est que vous n'avez pas fourni d'adresse d'hôte ou adresse de base sur le côté serveur. Est-ce une erreur?
Même si j'ai donner l'adresse, il échoue.
Avez-vous un problème lorsque le service est démarré?
Sont à la fois des services en cours d'exécution sur la même machine?
Oui, ils sont en cours d'exécution sur le IIS 7.5 sur la même machine.

OriginalL'auteur Learner | 2011-08-04