J'ai un service WCF qui appelle, par l'intermédiaire d'une BL, une couche de données et finalement un back-end SQL Server. Mon service expose diverses méthodes/opérations pour obtenir des données de la base de données. J'ai également construit un hôte pour le tester, et un hôte de service Windows, qui est la façon dont je prévois de le déployer.
Hier, lorsque j'ai effectué un test de déploiement, le service a bien démarré mais je n'ai pas eu l'occasion de voir si les données étaient correctement extraites. Voici le problème : mon environnement de test de déploiement (MS Server 2003) est totalement différent de mon propre environnement de test local (ordinateur portable). J'ai déployé en copiant le fichier bin \debug du projet de service Windows sur le serveur et en référençant le fichier .exe lorsque j'ai utilisé InstallUtil.exe. Mais la connexion de données pour le DL devrait prendre une chaîne de connexion différente, évidemment, puisqu'elle devrait se connecter à la base de données sur le serveur, et non sur mon ordinateur portable. Pourtant, le seul app.config que je vois dans le répertoire où j'ai effectué le déploiement est celui de l'hôte de service. Les autres projets, comme le DL et le BL, sont également présents sous forme de DLL, mais il n'y a pas d'app.config pour eux. Alors comment puis-je remplacer l'app.config du DL par celui qui correspond à cet environnement ? Je suis sûr qu'il s'agit d'un problème simple que je n'arrive pas à cerner.
Une question connexe : Si nous décidons plus tard que nous voulons utiliser un hôte HTTP à la place - ou en plus - de TCP, puis-je faire tourner un deuxième hôte à partir de ce même service ? Dois-je simplement déployer l'hôte avec IIS et ajouter un nœud de service à l'app.configs ?