指定在结果数据中必须忽略的列

Specifying columns that have to be ignored in the result data

我有一个 CTE returns 以下 table:

m_ids |gp_id |id |m_id |id |type|id |type|qty|...
------|------|---|-----|---|----|---|----|---|---

m_idsgp_idm_id 用于连接,必须删除。然后数据会转到客户端,Dapper 会处理列名的歧义,所以这不是问题。

问题是如何从数据中删除某些列,因为 dapper 会查看列的顺序以创建实体。
我不能只 select 所有必需的列,因为有很多相同的名称(即使我可以,这也可能是个坏主意,因为有 A LOT 个我需要的列)。

有人可以帮我吗?
必须保留数据的顺序,最后它应该看起来像这样:

   id |id |type|id |type|qty|...
   ---|---|----|---|----|---|---

编辑: returns 数据看起来有点像这样的查询:

select
    m1.*,
    m2.*
from
    pairs p
    inner join materials m1 on m1.id=p.id1
    inner join materials m2 on m2.id=p.id2

事实证明,当在一行中返回多个实体时,Dapper 使用列 id 作为分隔符,所以诀窍是确保所有多余的列都放在末尾的某个位置任何实体,Dapper 将忽略它。所以我将这些列按这样的顺序排列,就是这样:

id |id |type|m_ids |gp_id |m_id |id |type|qty|...
---|---|----|------|------|-----|---|----|---|...