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

C# 一个好的WCF客户端设计模式,c#,wcf,design-patterns,web-services,C#,Wcf,Design Patterns,Web Services,我的应用程序与大量wcf服务通信,即我的应用程序有几个程序集,每个程序集使用不同的wcf服务 我正在寻找一个好的wcf客户端设计模式,这样我可以保持我的代码简洁,可重用和优雅 我使用的wcf服务都是一样的——基本上是用来检查价格然后预订物品的。当你说所有服务都是一样的时候,我想你的意思是它们是相似的 如果它们完全相同,那么您应该能够为所有它们使用相同的WCF客户端(只是使用不同的地址) 如果不是这样,您可以定义一个符合公开功能的接口。这可能看起来像: public interface IMySe

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

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


我使用的wcf服务都是一样的——基本上是用来检查价格然后预订物品的。

当你说所有服务都是一样的时候,我想你的意思是它们是相似的

如果它们完全相同,那么您应该能够为所有它们使用相同的WCF客户端(只是使用不同的地址)

如果不是这样,您可以定义一个符合公开功能的接口。这可能看起来像:

public interface IMyService
{
    decimal GetPrice(int productId);

    void Book(int thingId);
}
现在编写IMyService的实现,作为每个WCF客户机和IMyService之间的接口


在应用程序的其余部分中,仅针对IMyService接口编程。或者,您可以使用依赖项注入将一个或多个具体的IMyService实现注入到应用程序代码中。

谢谢。当你说依赖项注入时,你的意思是作为构造函数传入类吗?是的,通过构造函数传入依赖项是一种主要的DI模式。