正确实现接口以公开Web服务

时间:2014-01-06 18:03:49

标签: c# asp.net-mvc web-services design-patterns

我有一个3层的ASP.NET MVC应用程序。 BLL引用了另一个项目,我有支持网关的Web服务代理类。现在我正在使用开发网络服务,但后来将切换到生产服务。

我试图通过类实现接口将Web服务公开给BLL(因此我可以轻松地从开发服务器转换为生产服务)但是我不确定如何在这种情况下正确使用该接口。我认为有两种选择。

  • 创建一个新类并实现该接口。在已实现的方法内部调用具有相同名称的Web服务方法(在代理类中)。将此课程公开给BLL。
  • 创建一个新类,继承Web服务代理类并实现该接口。这有效地将新创建的类留空。将此课程公开给BLL。

请告知哪种方法更好。

1 个答案:

答案 0 :(得分:1)

我会建议adapter design pattern。您将使用包装服务功能的类(适配器类)。然后,您将使用适配器类作为项目的其余部分,就像它是实际服务一样。当您准备切换到新服务时,只会在适配器类上进行更改。

希望我帮忙!