【问题标题】:Converting ASMX to WCF Web Service将 ASMX 转换为 WCF Web 服务
【发布时间】:2009-06-23 03:04:20
【问题描述】:

我需要升级我们的 Web 服务以使用 WCF 而不是 ASMX。如果 Web 服务的签名保持不变,那么已经调用 ASMX 服务的现有客户端是否必须对其进行任何更改?无论如何仍然使用 WCF 但不强迫他们改变任何东西?

【问题讨论】:

  • 您能解释一下为什么“需要”升级吗?

标签: wcf


【解决方案1】:

选项 1:

  1. 使用当前ASMX的WSDL,使用svcutil.exe生成客户端

  2. 抓取生成的接口,并基于该接口创建WCF服务

    输出:一个使用 basicHttpBinding 配置的新 WCF 端点。客户端需要更新他们发送消息的 URL。

选项 2:

  1. 重构您的 ASMX 代码。将所有逻辑移到单独的 DLL 中。

  2. 创建 WCF 服务并使用重构的 DLL 中的逻辑。

    输出:2 个端点,一个用于 ASMX,另一个用于 WCF

【讨论】:

    【解决方案2】:

    如果您将BasicHttpBinding 用于新的 WCF 服务,并使用相同的消息结构实现相同的方法,则现有调用者应该能够调用这个新的 WCF 服务而无需对其进行任何更改。

    还有一个 AspNetCompatibilityRequirements 属性可以解决一些潜在的兼容性问题 - 请参阅上面的 MSDN documentation

    马克

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-07
      • 1970-01-01
      • 1970-01-01
      • 2012-06-23
      • 1970-01-01
      • 2011-02-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多