2009-02-25 4 views
2

J'ai créé un service WCF avec NetMsmqBinding, et je l'ai hébergé dans IIS7 en utilisant Windows Activation Service (WAS).Puis-je héberger un service WCF avec NetMsmqBinding dans l'application racine "/" d'un site IIS7?

actuelle (fonctionne parfaitement):

Hébergé dans IIS à: http://localhost/MyService/MyService.svc

Avec l'adresse de point de terminaison de service: http://localhost/private/MyService/MyService.svc

Et la file d'attente correspondante: .\private$\MyService/MyService.svc

désiré (ne fait rien, pas même un message d'erreur):

Hosted dans IIS à: Avec l'adresse de point de terminaison de service http://localhost/MyService.svc

: http://localhost/private/MyService.svc

Et la file d'attente correspondante: .\private$\MyService.svc

Tout fonctionne parfaitement lorsque j'utilise l'application IIS MyService. Mais la même configuration (code, sécurité IIS, sécurité de la file d'attente, etc.) ne fait rien lorsque j'essaie d'utiliser l'application "/" racine au lieu de l'application "MyService" pour héberger le service. Je ne reçois aucune erreur dans le journal des événements. Les messages entrants restent dans la file d'attente.

L'hébergement d'un service activé par WAS est-il pris en charge dans l'application racine d'un site IIS7?

Répondre

0

L'hébergement des services activés WAS fonctionne correctement. Je ne suis pas sûr à 100% sur le netMsmqBinding. le point final devrait être http://localhost/service.svc pas/privé cependant.

1

J'ai trouvé un bug en hébergeant les services WCF à la racine (passé beaucoup de temps au téléphone avec le support MSFT), les hébergeant ainsi dans une application.

Par exemple, j'ai un service NetMsmqBinding hébergé dans IIS7, il est configuré pour WAS et il est hébergé dans le site par défaut comme:

http://mymachine/msmqtest/service.svc

Le nom de file d'attente pour MSMQ doit être appelé:

"msmqtest/service.svc"

Et le point final dans la configuration doit être:

net.msmq: //mymachine/private/msmqtest/service.svc

Aussi, assurez-vous que vous utilisez le nom de la machine dans la configuration, pas un nom d'en-tête d'hôte ou quelque chose. MSMQ fonctionne d'un ordinateur à l'autre, très important.

Questions connexes