WCF和ASMX在同一个项目中

时间:2014-06-10 15:12:46

标签: web-services wcf asmx

我目前正在'需要'在我有5个.asmx服务的项目中添加WCF服务。

是不是很糟糕,或者我可能会遇到一些令人讨厌的问题吗?

1 个答案:

答案 0 :(得分:0)

您可以毫无问题地执行此操作。但为了更好的可维护性和可扩展性我建议使用" Service Gateway Pattern"。

enter image description here

在Service Gateway Pattern中,您必须创建一个单独的项目,将服务逻辑与您的终端分离,使服务更改对终点的影响最小。当您使用不同类型和/或不同来源的服务时,它也很有用。

<强>优点:

  • 将服务访问逻辑与应用程序的其余部分分离 可以轻松更改应用程序访问的服务。对于 例如,您可能想要切换到同一服务的新版本, 或者您可能希望使用具有更好服务级别保证的服务 来自其他供应商。如果,切换到另一个服务要容易得多 您可以自动生成执行数据映射的代码。
  • Service Gateway隐藏了访问服务的复杂性 应用程序。这改善了应用程序的重用 组件和服务访问组件。该申请没有 直接引用该服务,因此它独立于任何 实施细节和服务的位置。封装 单独层中的服务访问逻辑也改善了重用 访问逻辑,因为它现在可以跨多个使用 服务调用只要相同的传输和身份验证 机制被使用。
  • Service Gateway提供了提供通用服务的理想位置 异步调用,缓存和错误等功能 处理
  • 如果您使用多个第三方的服务,如果隐藏所有差异和&amp;客户端上的流线使用情况。

有关详细信息,请参阅msdn Service Gateway链接。