Question

On m'a posé cette question - Comment commencez-vous à consommer un service WCF à l'avance (à lire avant d'être implémenté / déployé)?

Je ne pouvais pas penser à une réponse très convaincante et a dit que nous pourrions probablement générer un proxy et fournir quelques talons ..etc ... vous avez eu l'idée. Même je n'étais pas convaincu avec moi-même. La question a du sens car la présentation et les services sont de différents niveaux. On ne devrait pas attendre d’autres en développement au moins.

Quoi qu’il en soit, je réfléchis depuis lors et j’ai besoin de quelques conseils à ce sujet de la part d’experts. Des suggestions / approches?.

Était-ce utile?

La solution

Eh bien, si vous avez les contrats et tout, vous pouvez toujours créer votre propre implémentation fictive du service.

E.g. créez votre propre " MockFinancialDataService " à partir de vos contrats de service et de données, puis ajoutez simplement une implémentation totalement simple, par exemple. renvoyer des valeurs fixes ou quelque chose.

Hébergez ces services fictifs dans votre environnement - dans IIS ou par vous-même - et programmez-les contre ceux-ci.

Ne devrait pas être trop difficile, vraiment.

Il existe également un ensemble d'outils appelé Mockingbird sur Codeplex, qui promet de faciliter la mise en œuvre fictive " histoire un peu - pas encore eu le temps d’enquêter à fond, mais vous voulez peut-être jeter un coup d’œil quand même.

Autres conseils

Cela dépend en partie de la manière dont vous configurez WCF. L'une des options consiste à utiliser le partage d'assembly (plutôt que les mandataires générés par mex). Dans ce cas, vous possédez déjà votre contrat de service: il ne s'agit que de l'interface (et des classes DTO) de la DLL couplée. À partir de là, vous pouvez vous moquer du contenu de votre cœur et passer au service réel n’est autre chose qu’un cas de configuration de votre application.config / web.config et de la commutation de votre couche IoC / DI pour utiliser WCF difficile, mais "comment" dépend de votre choix d'IoC / DI).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top