匿名类型是DTO / POCO的更好选择吗?

时间:2016-03-24 14:42:02

标签: c# json performance dto anonymous-types

通过网络请求返回json数据可以让我们更轻松,更快捷。所以我想知道,最好还是什么:匿名对象还是DTO?

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

谢谢!

1 个答案:

答案 0 :(得分:2)

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

使用匿名类型的 disadvangates 是它们在定义它的方法之外不是类型安全的。它"工作"返回JSON时,因为它使用反射来获取该类型的所有属性,就像" normal"类。

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