我正在为我的某些类型使用 Dapper Extensions,它对大多数用例都非常有效。我遇到了一个我有很多关系的案例,我想做类似的事情:-
SELECT id,a,b,c FROM Foo WHERE Foo.id in (SELECT foo_id FROM foo-bar WHERE bar-id=@bar_id)
显然,Dapper Extensions 可以处理“SELECT id,a,b,c FROM Foo”,但不能处理后半部分。我可以进行选择以获取我想要的 Foo id 列表,然后将其传递给 Dapper Extensions,但这效率较低。
我不能用普通的 Dapper 做的部分是自动获取 SELECT 列列表,所以我真正想要的是一种方法:-
- 从 Dapper Extension 的内部机制中获取 SELECT 列列表
- 从 Dapper Extension 的内部机制中获取基本的“SELECT id,a,b,c FROM Foo”
- Hook Dapper Extensions 获取代码,以便我可以添加自定义 WHERE 子句
我查看了代码,但我不知道如何做这些事情。任何人都可以帮忙吗?目前我已经通过使用普通的 Dapper 和“SELECT * ...”来解决问题,但我确信有更好的方法。