2010-02-24 60 views
4

我的应用程序与大量的wcf服务进行通信,即我的应用程序有几个组件,每个组件都使用不同的wcf服务。一个很好的WCF客户端设计模式

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

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

回答

3

当你说所有的服务是相同的,我推测你的意思是他们是类似

如果他们真的是相同的,你应该能够使用相同的WCF客户端为他们所有(只是用不同的地址)。

如果不是这种情况,您可以定义一个符合公开功能的接口。这可能是这样的:

public interface IMyService 
{ 
    decimal GetPrice(int productId); 

    void Book(int thingId); 
} 

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

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

+0

谢谢。当你说依赖注入时,你的意思是你作为构造函数传入类吗? – TheLearner 2010-02-25 11:12:28

+0

是的,通过构造函数传递依赖关系是主要的DI模式。 – 2010-02-25 11:45:26