【发布时间】:2012-03-06 20:34:08
【问题描述】:
我在代码中使用 DTO 在层之间传输数据。 我有几种扩展方法可以将它们映射到我的 BL。
现在我想通过我的 WCF API 使用这些 DTO。
这是一个好方法吗?我不确定这些扩展方法是否也会与 DTO 类一起公开,如果是,我该如何避免?
【问题讨论】:
我在代码中使用 DTO 在层之间传输数据。 我有几种扩展方法可以将它们映射到我的 BL。
现在我想通过我的 WCF API 使用这些 DTO。
这是一个好方法吗?我不确定这些扩展方法是否也会与 DTO 类一起公开,如果是,我该如何避免?
【问题讨论】:
您的扩展方法不会作为 wcf 服务合同的一部分公开。如果您的 DTO 包含“正常”方法,它们也不会被公开。只有这些 DTO 的 DataContract 会显示在您的服务合同中。
【讨论】:
如果您将扩展与 DTO 放在相同的命名空间中,它们可能会暴露在客户端;例如,当从 DTO 创建 ViewModel 时,可能会发生这种情况。
【讨论】: