最佳答案
有什么方法可以将 Dapper.NET 用于返回多个结果集的存储进程吗?
在我的例子中,第一个结果集是一行,只有一列; 如果它是 0
,那么调用就成功了,第二个结果集将包含实际的数据行/列。(如果它是非零的,就会出现错误,并且不会提供第二个结果集)
有机会用 Dapper.NET 处理这个吗?到目前为止,我只得到了一个单一的 0
-但没有更多。
更新: OK,它工作得很好——只要结果集2是一个单独的实体:
Dapper.SqlMapper.GridReader reader =
_conn.QueryMultiple("sprocname", dynParams,
commandType: CommandType.StoredProcedure);
int status = reader.Read<int>().FirstOrDefault();
MyEntityType resultObj = reader.Read<MyEntityType>().FirstOrDefault();
现在,我有 又一个的要求。
Dapper 为第二个结果集提供的多映射(将从 SQL Server 返回的一行分解为两个独立的实体)似乎还不受支持(至少似乎不存在能够处理多映射的 .Read<T>
过载)。
如何将该行拆分为两个实体?