2011-08-30 5 views
2

J'ai été invité à scinder mon service WCF en plusieurs fichiers .svc différents, un par groupe d'opérations logiques. Maintenant, la question est que je dois les accueillir dans exactement la même adressePlusieurs services WCF

http://somehost/ProjectX/ 

et je ne sais pas vraiment si je peux les mettre dans ce même itinéraire exact parce que, bien que les .SVC fichiers ont des noms différents , leurs fichiers de configuration partagent tous le nom Web.config. Comment puis-je contourner cela? Dois-je utiliser

http://somehost/ProjectX/Service1/Service1.svc 
http://somehost/ProjectX/Service2/Service2.svc 
... 

?

+0

Quel est le problème avec eux de partager une config si elle est accessible? –

+1

Parce que je ne pense pas que je devrais séparer les services par logique, puis les fusionner à nouveau dans le même fichier de configuration. – User

+0

Comment ça "fusionne"? Ils chargent chacun leur propre copie - sauf si chacun des services requiert des éléments de configuration différents (où l'on ne devrait pas connaître les autres), alors la duplication de la configuration semble redondante, et si un paramètre change dans un, vous devrez les changer tous . –

Répondre

1

Les services sont en mesure de partager l'adresse de base par défaut, ils ont juste besoin d'avoir différents contrats (les bits de fin des URL). J'ai écrit un post sur ce sujet, mais depuis lors j'ai arrêté de payer pour l'hébergement et n'ai jamais eu le temps de migrer le post. Le code est toujours disponible sur github et avec un peu de persistance, il devrait être facile de comprendre comment s'y prendre.

Le projet montre comment héberger de nombreux services WCF dans un service Windows. Il vous permet de faire ceci:

http://localhost:8083/WCFServices/IService1 
http://localhost:8083/WCFServices/IService2 
http://localhost:8083/WCFServices/IService3 
+0

Désolé pour élever un ancien message, mais votre lien est mort. Peut vouloir mettre l'information ici ou la mettre à jour. Merci! –

+0

hey @ JamesRalston. Tnx pour l'avoir soulevé. Je cesse de payer pour mon hébergement car mon fournisseur me demandait toujours le mot de passe de facturation par e-mail "pour confirmer mon identité". J'ai toujours du code sur github mais pas beaucoup de documentation :(J'espère que ça sera toujours bien pour quelqu'un de regarder autour du projet pour trouver comment faire ça. – oleksii