【问题标题】:Remove schema elements from WSDL generated by WCF从 WCF 生成的 WSDL 中删除架构元素
【发布时间】:2011-12-15 10:14:21
【问题描述】:

我有一个产品数据合同,其中包含几个数据成员,它们是 WCF 服务的一部分。我还使用 DataContractSerializer 将此 Product Datacontract 序列化并存储在我的应用程序中。

现在,我想在生成服务元数据 (WSDL) 时删除产品数据合同的一些数据成员。但是,当我在应用程序中序列化对象时,我希望 Product Datacontract 中的所有数据成员都可用。

实际上,我想做的是:抓住 WSDL 生成过程,并从注入到生成的 WSDL 中删除所需的 Datamembers。

谢谢 莫福罗

【问题讨论】:

    标签: wcf wsdl wcf-extensions


    【解决方案1】:

    破解 WSDL 以不包含信息对您没有帮助。在将类型传递给客户端以及从客户端反序列化它们时,您的服务仍将使用类型的完整序列化。无需破解 WSDL 和 WCF,而是将 DTO 用于 WCF 服务 = 新类型集,其中仅包含您真正想要与客户端交换的属性。将您的主对象转换为 DTO,反之亦然(您可以创建自己的自定义转换器或使用一些框架,如 AutoMapper)。这是最佳做法。

    【讨论】:

      猜你喜欢
      • 2019-01-23
      • 2023-03-04
      • 2015-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多