dapper: obtenga resultados y cuente al mismo tiempo usando QueryMultiple

.net c# dapper sql sql-server

Pregunta

Escribí dos segmentos de comando SQL y quiero procesar en una consulta como esta:

SELECT COUNT(*) FROM books

SELECT * FROM books ORDER BY bookID OFFSET 1000 ROWS FETCH NEXT 10 ROWS ONLY

¿Cómo puedo usar el método conn.QueryMultiple para obtener el count Y la list of books al mismo tiempo?

BTW: No quiero crear ninguna clase de entidad adicional

Respuesta aceptada

Del ejemplo de github:

var sql = @"SELECT COUNT(*) FROM books
            SELECT * FROM books ORDER BY bookID OFFSET 1000 ROWS FETCH NEXT 10 ROWS ONLY";

using(var multi = connection.QueryMultiple(sql))
{
    var count = multi.Read<int>().Single();
    var results = multi.Read<YourObject>().ToList();
}


Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué