Quelle est la différence entre une application de service WCF et une bibliothèque de services WCF?

Je développe un service Web WCF et j’ai utilisé le modèle d’application de service WCF pour le faire.

La création d’une application de service WCF répond-elle à cette exigence? Quels sont les avantages de créer une bibliothèque de services WCF sur une application de service WCF?

Une application de service comprend un hôte de site Web déjà configuré pour vous. Une bibliothèque de services est une bibliothèque de services qu’un hôte peut référencer et démarrer.

Si vous commencez avec une bibliothèque de services (recommandée), vous pouvez alors choisir n’importe quel hôte (un service Windows, IIS / ASP.NET ou même une application console) et vous référerez simplement votre bibliothèque à partir de votre nouvel hôte. Choisir une application de service limite votre hôte à juste IIS / ASP.NET (même si cela peut convenir à vos besoins, mais limitera les protocoles que vous pouvez utiliser).

Modifier : les modifications apscopes à IIS depuis que j’ai écrit ceci permettent une plus grande variété de protocoles sur les services activés par ASP.NET. Le choix d’une application de service est donc beaucoup moins contraignant qu’auparavant.

Si tout ce que vous avez est le seul projet, je ne vois que la complexité supplémentaire si vous séparez pour le diable. J’ai utilisé une bibliothèque lorsque j’avais des cas d’utilisation particuliers où je devais héberger à la fois un service Windows et IIS.

Pour IIS vous pouvez déplacer les classes et les interfaces vers une bibliothèque tout en conservant vos fichiers .SVC dans le projet Web. Vous devez éditer les fichiers .SVC pour indiquer les classes correctement qualifiées.