2009-06-25 6 views
0

J'ai récemment écrit un wrapper (C#) pour un service Web ApplinX - il s'agit d'un produit faisant partie de l'offre Adabas de Software AG. L'interface du service Web est vraiment primitive et j'ai écrit le wrapper pour le rendre plus facile à utiliser.Conversion de service Web en WCF

L'encapsuleur est utilisé sur les applications Web (C# + Asp.Net) mais je souhaite qu'un client Windows y accède en utilisant WCF. Serait-il préférable d'écrire les services WCF à partir de zéro ou simplement envelopper le wrapper existant dans WCF?

Répondre

1

L'encapsuleur est-il dans une bibliothèque de classes séparée? Si ce n'est pas le cas, vous pouvez déplacer l'encapsuleur dans une bibliothèque de classes et autoriser l'application ASP.NET et l'application cliente Windows à la consommer. Cela éliminerait les enveloppes d'adition et les couches d'abstraction. Cela permettrait également au client Windows de consommer directement le service sans passer par l'application ASP.NET. Si vous encapsulez l'encapsuleur actuel en tant que service WCF, le client Windows lancera un appel de service vers votre application ASP.NET, qui effectuera un autre appel vers le service qu'elle utilise. . La recommandation ci-dessus l'élivera. Si toutefois il y a une logique métier que vous devez encapsuler et que vous voulez seulement être sur le serveur, alors je créerais un service WCF sur l'application ASP.NET et j'intégrerais les appels à votre service d'encapsulation dans ce service. Le client Windows peut ensuite consommer le service WCF.

Questions connexes