在 Dapper 中使用存储过程有什么缺点吗?
Are there any disadvantage to use stored procedures with Dapper?
我最近开始学习名为 Dapper 的微型 ORM。我们通常严重依赖 MSSQL 数据库中的存储过程,以避免 T-SQL 与我们的 C# 代码混淆。
您使用 Dapper 和存储过程的经验如何? Dapper 是否需要内联 T-SQL 才能充分利用 Dappers all benefits\features?
What are your experience with Dapper and stored procedures?
Dapper 最终是一个对象映射器,它在内部使用 ADO.Net
API 工作,虽然它缓存某些数据结构以加快查询速度,但它与存储过程一起工作非常有效。
Does Dapper require inline T-SQL to fully utilize Dappers all benefits\features?
不,事实上,因为存储过程是预编译的,所以不像 Sql 文本查询,每个请求都没有硬解析范围,因为最佳执行计划已经缓存在 Sql 服务器.
简而言之,存储过程确实是用于 dapper 和 SQl 服务器组合的理想机制:
- 性能
- 干净一致的代码
- 执行复杂的数据库操作,例如使用 TVP,它可以在一次调用中获取大量数据并使用它而不是多个网络请求 uisng 文本查询
我最近开始学习名为 Dapper 的微型 ORM。我们通常严重依赖 MSSQL 数据库中的存储过程,以避免 T-SQL 与我们的 C# 代码混淆。
您使用 Dapper 和存储过程的经验如何? Dapper 是否需要内联 T-SQL 才能充分利用 Dappers all benefits\features?
What are your experience with Dapper and stored procedures?
Dapper 最终是一个对象映射器,它在内部使用 ADO.Net
API 工作,虽然它缓存某些数据结构以加快查询速度,但它与存储过程一起工作非常有效。
Does Dapper require inline T-SQL to fully utilize Dappers all benefits\features?
不,事实上,因为存储过程是预编译的,所以不像 Sql 文本查询,每个请求都没有硬解析范围,因为最佳执行计划已经缓存在 Sql 服务器.
简而言之,存储过程确实是用于 dapper 和 SQl 服务器组合的理想机制:
- 性能
- 干净一致的代码
- 执行复杂的数据库操作,例如使用 TVP,它可以在一次调用中获取大量数据并使用它而不是多个网络请求 uisng 文本查询