一个很好的WCF客户端设计模式

时间:2010-02-24 10:14:33

标签: c# wcf design-patterns web-services

我的应用程序与大量的wcf服务进行通信,即我的应用程序有几个程序集,每个程序集都使用不同的wcf服务。

我正在寻找一个好的wcf客户端设计模式,这样我就可以保持我的代码简洁,可重用和优雅。

我消费的wcf服务都是一样的 - 基本上用于检查价格然后预订。

1 个答案:

答案 0 :(得分:3)

当你说所有服务都相同时,我认为你的意思是他们相似

如果它们真正相同,您应该能够为所有这些客户端使用相同的WCF客户端(只有不同​​的地址)。

如果不是这种情况,您可以定义符合公开功能的界面。这可能看起来像:

public interface IMyService
{
    decimal GetPrice(int productId);

    void Book(int thingId);
}

现在编写IMyService的实现,在每个WCF客户端和IMyService之间充当Adapters

在应用程序的其余部分中,您只能针对IMyService接口进行编程。 (可选)您可以使用依赖注入将一个或多个具体的IMyService实现注入到应用程序代码中。