【问题标题】:Customizing the message contracts when creating a WCF service reference in Visual Studio 2010在 Visual Studio 2010 中创建 WCF 服务引用时自定义消息协定
【发布时间】:2011-06-05 20:18:15
【问题描述】:

在 Visual Studio 2010 中添加 WCF 服务引用时,是否可以修改生成消息协定的方式?具体来说,我希望请求和响应对象具有属性而不是公共字段。

我无法控制 WCF 服务本身,只能控制客户端。

【问题讨论】:

    标签: wcf visual-studio-2010 wcf-client


    【解决方案1】:

    我认为您无法控制生成的代理,但您可以在它们生成后对其进行修改。为什么要更改代理?

    【讨论】:

    • 例如,在需要 WSE 或需要使用 [NetDataContract} 属性的代理中,您只能在创建后执行此操作。这是安全的,但如果您因为 Web 服务已更改而更新代理,那么您必须再次手动编写这些更改。这很糟糕,但它有效。
    【解决方案2】:

    您无法控制生成的代理中的代码。如果需要,您可以使用 MetadataExchangeClient / ServiceContractGenerator 类自己生成代理。他们会给你一个 CodeDom 对象,其中包含你可以修改的代码(即,将字段更改为属性)。在 MSDN 论坛帖子http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/14100bbb-9a73-4bcc-b513-088bb2e5ec65 中有一个使用 MEC/SCG 类的示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多