Dapper只是一个工具。它的作用是:
什么是没有做到的是:
SubmitChanges()
(或其他) 原始dapper库不提供CRUD功能,但“contrib”附加包确实提供了基本的CRUD。
基本上,它不是一个全权重的ORM,但如果你只是想在不必与 ORM 对抗的情况下运行查询,或者支付与ORM相关的开销,那就非常棒了。如果您不了解SQL,原始库可能不适合您(尽管“contrib”应该没问题),但很多人不仅知道 SQL,而且他们希望控制 SQL(而不是让ORM提出一些未经优化的意图解释,等等。
总而言之,原因可能是:
至于“vs ADO.NET”:
SqlGeometry
数据),那些不能直接在dapper中使用 - 您需要实现一个接口来告诉它如何处理你的场景,但这并不难(请注意特定的SqlGeometry
示例由另一个dapper库处理)