1

我目前正在开发一个 N 层应用程序,在 UI 前端使用 MVC4,然后与 WCF 服务对话,然后调用使用 EF 从 Oracle 获取数据的业务层。

我创建了一组从 EF 填充的 DTO 对象,并通过 WCF 服务发送到 UI。我的问题是这个...

当我在 UI 中添加服务引用时,DTO 类在 Reference.cs 中重新创建了服务代码的一部分。这可以吗,还是我应该添加对原始 DTO 类项目的引用?

它是纯粹的开发选择,还是有特定的好处或陷阱或任何一种方法?

任何帮助将非常感激。

谢谢,尼克

4

1 回答 1

1

使用原始合同程序集的一个好处是,当该合同更改时,您的客户端程序集中会出现编译错误。如果您使用生成的客户端,它将编译然后在运行时崩溃。尤其是使用持续集成,您希望尽早发现错误,编译时间非常好。

根据您生成的客户端实现,它可能已经实现了 INotifyPropertyChanged。这可能超出了您的 DTO 所能做的。DTO 不应执行此操作。因此,如果您要在客户端再次重新实现所有 DTO 以使用此接口,您可能会争辩说使用生成的类已经给您带来了好处。

所以最后......这纯粹是一个开发者的选择。

于 2013-03-11T12:33:07.093 回答