使用Dapper-dot-net时,如果您查询强类型结果,并且您的SQL只有:
select *
Dapper会自动只对匹配对象中字段的列进行选择吗?我认为PetaPOCO做到了这一点,但我遇到了一些问题,我认为这些问题归因于这种不匹配。
实施例,
conn.Query<article>("select * from Article");
如果Article
表包含与article
对象无关的其他列,这会有效吗?
答案 0 :(得分:5)
是的确如此 - 我在周末尝试了这个,即使查询涉及两个由FK约束连接的表。我创建了两个只代表那些底层表的部分的类,并且那些存在的属性将被填充得很好,任何不在类中的东西都将被忽略。像魅力一样工作!
另一方面:如果您只需要几个列 - 您应该在SQL查询中明确指定 - 作为一般的最佳实践!如果你只需要少量的专栏,那么选择一切都没有意义....