【问题标题】:Is anonymous type better choice to DTO/POCO?匿名类型是 DTO/POCO 更好的选择吗?
【发布时间】:2016-03-24 14:42:01
【问题描述】:

通过 Web 请求返回 json 数据使我们更轻、更快。所以我想知道,返回什么更好:匿名对象还是 DTO?

我读过一些关于架构的问题:http://www.codeproject.com/Articles/1018716/Replacing-DTO-with-Anonymous-object 以及 DTO 的使用:Entity Framework is Too Slow. What are my options? 但这不是我的重点,我想知道在返回 Web 请求时更轻、更快。

谢谢!

【问题讨论】:

  • 我不会在 CodeProject 文章中给予太多重视。它是由一个人写的,没有任何反馈。他并没有真正进入不利的一面,只是展示了它是如何可以做到的。

标签: c# json performance dto anonymous-types


【解决方案1】:

就“重量”或性能而言,应该没有显着差异。匿名对象类,就像 DTO 一样,它们只是不是在设计时定义的,而是由编译器定义的。

使用匿名类型的缺点是它们在定义它的方法之外不是类型安全的。它在返回 JSON 时“起作用”,因为它使用反射来获取该类型的所有属性,就像“普通”类一样。

匿名类型的好处是纯粹的编码效率 - 您不必定义“类型”以在单个方法中使用。但是,如果该类型将被方法公开(无论是直接公开还是通过 JSON),那么您应该为它定义一个类型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-24
    • 2010-12-16
    • 2013-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多