2011-11-03 4 views
0

J'ai travaillé avec environ une douzaine de services WCF qui ont été déployés sur diverses machines avec IIS. Toutes les liaisons/configurations ont été conservées dans le fichier "web.config" habituel qui a été créé pour garder les services plus configurables et garder le code de service lui-même plus propre. Cependant, j'ai récemment été chargé de créer un service Windows pour héberger ces services WCF. Une question que j'ai, est-ce que je copie simplement tous les arrangements du fichier web.config au fichier App.config pour le service de Windows? Ou dois-je reconfigurer tous les points de terminaison/liaisons/etc. utilisant un format différent dans le fichier App.config? Je n'ai jamais créé un service Windows avant et je ne suis pas sûr à 100% de ce dont j'ai besoin pour l'installation une fois que j'ai créé l'hôte de service Windows. Merci d'avance.Portage WCF Service Web.config à Windows Service App.config

Répondre

1

Les éléments de configuration WCF dans web.config doivent être traduits directement dans app.config. J'ai coupé et collé des éléments web.config comme ça dans le passé. La seule chose à surveiller est que ni web.config ni app.config ne répètent certains éléments, donc si vous fusionnez des données de configuration de plusieurs fichiers web.config, vous devez vous assurer que vous ne répétez pas les sections Cela ne devrait exister qu'une seule fois.

1

J'ai toujours pensé que le modèle de configuration .NET ne correspondait pas bien à la configuration de service WCF.

Il existe un moyen d'apprendre à WCF à récupérer sa configuration à partir d'un autre emplacement. Je tiens à le définir de sorte que le service WCF récupère ses informations de configuration de ServiceName.config plutôt que web.config ou AppName.exe.config. Cela résout le problème de répéter les éléments mentionnés par Harper Shelby.

Here's a full explanation and some code.

En utilisant cet hôte de service personnalisé, le déplacement d'un service WCF de IIS à un modèle d'auto-hébergé est vraiment simple.

Voir aussi, WCF Configuration - Split it out of app.config

Questions connexes