【发布时间】:2012-04-05 09:29:47
【问题描述】:
是否有一种巧妙的方法来构建我的 WCF 服务,以便我可以实现一次服务并让它为不同的调用者返回不同的数据协定? (即移动客户端)
我们已经开发了一组供桌面应用程序使用的服务,现在正在构建该应用程序的移动版本。问题是返回的数据传输对象 (DTO) 太大并且包含移动应用程序不必要的成员。随着它通过移动网络,我们希望删除这些以提高性能,但是服务的实现将是相同的。
到目前为止我们的想法:
- 设置 EmitDefault 为 false,然后不映射所有属性 移动呼叫者的 DTO(我们正在使用自动映射器,因此可以做一些事情 具有多种映射配置)
- 继承的桌面 DTO 类型使用 KnownType 属性扩展基本移动类型。
- 只是完全构建一个单独的服务,但确保所有逻辑都在一个共享的业务服务层中(它应该已经在)
有人知道是否有针对此要求的指导吗?
【问题讨论】:
标签: wcf mobile soa datacontract