【发布时间】:2011-07-21 10:19:00
【问题描述】:
关于我们的设计,我可以问自己哪些问题,以确定我们是否应该在应用程序中使用 DTO 或自我跟踪实体?
以下是我知道要考虑的一些事情:
- 我们有一个标准的 n 层应用程序,其中包含 WPF/MVVM 客户端、WCF 服务器和 MS SQL 数据库。
- 用户可以定义自己的接口,因此 WCF 服务所需的数据会根据用户为自己定义的接口而变化
- 在客户端和服务器端都使用模型进行验证。我们不会直接绑定到 DTO 或 STE
- 某些模型包含在需要时从 WCF 服务延迟加载的属性
- 数据库层向多个服务器/数据库发送垃圾邮件
- 在服务器端存在影响数据返回方式的权限检查。例如,某些数据会根据用户的角色被部分或完全屏蔽
- 我们的资源有限(时间、人力等)
那么,我怎样才能确定什么适合我们呢?我以前从未使用过 EF,所以我真的不知道 STE 是否适合我们。
我看到有人建议从 STE 开始,并且仅在出现问题时才实施 DTO,但是我们目前已经有了 DTO,并且正在尝试确定使用 STE 是否会使生活更轻松。我们在这个过程中已经足够早了,切换不会花费太长时间,但我不想切换到 STE,只是发现它对我们不起作用并且必须将所有东西都切换回来。
【问题讨论】:
标签: wcf entity-framework-4 poco self-tracking-entities n-tier-architecture