Consulta de recuento de NHiberate
Frecuentes
Visto 107 veces
0
En el NHiberante tengo este comunicado
(from p in Session.Query<MyObject>() select p).Count();
esto es igual a esto?
select count(*) from MyObject
suponga que el nombre del objeto es el mismo que el nombre de la tabla.
Si los datos de la tabla son enormes, ¿tenemos alguna forma de mejorar el rendimiento?
gracias
1 Respuestas
1
Puedes usar mejor:
(from p in Session.Query<MyObject>() select p).LongCount();
La consulta de SQLite es:
select cast(count(*) as BIGINT) as col_0_0_ from MyObject myobject0_
Puede crear consultas optimizadas específicas de DBMS con:
Session.CreateSQLQuery("sql query");
Preguntas sobre optimizaciones de conteo:
contestado el 23 de mayo de 17 a las 13:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas c# .net sql nhibernate or haz tu propia pregunta.
Si la tabla es realmente grande, una forma de mejorar el rendimiento sería almacenar en caché los resultados o almacenar un total acumulado en alguna parte. No hay mucho que pueda hacer para mejorar un recuento de filas tal como está. - dotjoe