使用Dapper以最小的DB命中率检索父对象和子对象

时间:2013-03-25 14:59:48

标签: sql-server-2005 dapper

对象层次结构可能类似于客户和订单,我希望所有客户的订单都是List属性。通常,在ado.net中,我们遍历每个客户并加载他们的订单,这可能导致N个客户的N次DB命中。那么,有没有办法直接在Dapper中实现这一点,如果没有,是否有更好的方法来实现这一点。

修改

我想使用连接一次检索所有记录,但客户会重复。而且,我需要从结果DTO构造所需的对象。但我不知道这是否是最好的方式,或者可能有任何其他方法,我可能会错过esp。 w.r.t Dapper。

1 个答案:

答案 0 :(得分:0)

您可以编写加入客户和订单表的查询。这将减少对DB的调用次数,但会增加从db获取的重复数据量。但这取决于您从客户表中获取的列数。