【发布时间】:2016-06-22 19:23:57
【问题描述】:
什么时候应该使用 Dapper 而不是 ADO.NET?
我想了解 Dapper 相对于 ADO.NET 的优缺点。 Dapper 的哪些优势会促使其使用?
【问题讨论】:
-
您可以在这里查看性能基准和使用简单性exceptionnotfound.net/…
什么时候应该使用 Dapper 而不是 ADO.NET?
我想了解 Dapper 相对于 ADO.NET 的优缺点。 Dapper 的哪些优势会促使其使用?
【问题讨论】:
Dapper 只是一个工具。它的作用是:
它不做的是:
SubmitChanges()(或其他)原始 dapper 库不提供 CRUD 功能,但“contrib”附加包确实提供基本 CRUD。
基本上,它不是一个全权重的 ORM,但如果您只想运行查询而不必与 ORM 或支付与 ORM 相关的开销,它非常棒.如果您不了解 SQL,那么原始库可能不适合您(不过“contrib”应该没问题),但是很多人不仅知道 SQL,而且还想控制 SQL(而不是让 ORM 对您的意图做出一些尚未优化的解释等)。
总而言之,原因可能是:
至于“vs ADO.NET”:
SqlGeometry 数据),那么这些在 dapper 中直接不可用 - 您需要实现一个接口来告诉它如何处理您的场景,但这并不难(请注意,特定的 SqlGeometry 示例由额外的 dapper 库处理)【讨论】:
DataTable :)