【问题标题】:How to share types generated from an ASMX service across WCF and Winforms如何在 WCF 和 Winforms 之间共享从 ASMX 服务生成的类型
【发布时间】:2013-10-04 17:07:38
【问题描述】:

我有一个 WCF 服务,它作为客户端和 ASMX 服务之间的中间层。我已经从 ASMX 服务中提取了这些类,并使用 SVCUtil 将它们包装在一个单独的 dataContract dll 中以生成代码。然后,我添加了对来自 Winforms 客户端和 WCF 服务的共享 DLL 的引用。

winforms 客户端在共享数据协定 dll 中填充一个类型并将其传递给 WCF 服务,但当 WCF 服务接收到该类型时,它为空。

是否需要采取其他步骤才能将这些 ASMX 类型成功包装到共享程序集中?

【问题讨论】:

  • 如果我拥有服务的两半,我从不使用它们。这仅在您不拥有该服务时才有用,因此您可以通过某些服务 SDK 自动生成不存在或您无权访问的类型。我通常只是将从服务的服务端推送的模型放在一个共享 DLL 中,然后客户端可以在反序列化响应时引用和使用该 DLL。

标签: c# .net winforms wcf web-services


【解决方案1】:

为避免生成的代理出现问题并完全控制调用服务方法,请使用共享(客户端)lib WCF 合同并创建您自己的代理类。例如,请参阅 thismore 了解详细信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-27
    • 2012-04-10
    相关资源
    最近更新 更多