gpt4 book ai didi

c# - 向客户端发送数据的最佳做法是什么 : POCO or DTO?

转载 作者:IT王子 更新时间:2023-10-29 04:24:21 24 4
gpt4 key购买 nike

我正在使用 EF 4 和 POCO 开始一个项目。

向客户端发送数据的最佳做法是什么?我应该发送 POCO 还是应该使用 DTO?

在将实体(与上下文断开连接)发送给客户端时,我应该注意什么问题吗?

是否推荐将 POCO 发送到客户端层?

最佳答案

我相信我们在这里混合了 2 个彼此没有关系的定义。

DTO或Data Transfer Object是一种设计模式,你可以用它来在层与层之间传输数据,而且它们没有行为。 Martin Fowler 在以下位置很好地解释了这一点:http://www.martinfowler.com/eaaCatalog/dataTransferObject.html

另一方面,我们有 POCO 或普通旧 CLR 对象。但是要说POCO,就得知道它是从哪里开始的,那就是POJO,即Plain Old Java Object。 Martin Fowler 和两个合伙人创造了这个词,他在这里解释:http://www.martinfowler.com/bliki/POJO.html

因此 POCO 可以具有行为以及您想要的一切。它们与您在日常编写的通用类相同,它们只是给了它们一个简短易记的名称。

在回答你的第二个问题时,我认为最好的方法也是我一直采用的方法是将 DTO 从业务层发送到使用它的所有内容(例如:你的服务、网站、桌面应用程序、移动应用程序等) .).这是因为在大多数情况下,它们没有行为,而不仅仅是属性,因此它们是轻量级的,非常适合用于服务,当然,它们不会泄露您业务中的敏感数据。

也就是说,如果您打算使用 DTO,我可以推荐您下载 EntitiesToDTOs,这是我最近在 CodePlex 上发布的一个 Entity Framework DTO 生成器,它是免费和开源的。转到 http://entitiestodtos.codeplex.com

关于c# - 向客户端发送数据的最佳做法是什么 : POCO or DTO?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3779508/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com