Muchas gracias a ambos. Lo de paginación lo tengo solucionado gracias
a vuestras instrucciones. Uso Oracle 10g.

El problema de propiedades calculadas es que los programadores, para
obtener dicho valor, accedían a las subentidades (carga lazy)
provocando que, en una lista de 100 elementos, que se accede a 3
subentidades por elemento, hablamos de 300 consultas a base de
datos...malo malo.

La idea era especificar la select de carga de dicha entidad haciendo
los joins que corresponden y mapeando esos valores, de forma que al
cargar la lista, directamente tendría los valores calculados en esas
propiedades y me ahorraba accesos a bbdd. Pondría estas propiedades en
insert="false" update="false" y listo...

¿Es buena idea hacerlo de esa forma? ¿Alguna idea mejor? ¿Tenéis algún
ejemplo de especificación de select para la carga de una entidad?

Muchas gracias

On 12 dic, 13:38, José F. Romaniello <[email protected]> wrote:
> Y otra cosa, en unhaddins hay 
> algo:http://code.google.com/p/unhaddins/source/browse/#svn/trunk/uNhAddIns...
>
> Aunque para mi, todo el problema el problema de Paginación/Sorting y
> Filtering, se puede resolver con dos funciones en un servicio de la
> siguiente forma:
>
> ICollection<TEntity> GetPage(int size, int pageNumber,
> Expression<Func<TEntity, bool>> predicate, params Func<TEntity, object>[]
> order);
> int GetLastPageNumber(int size, Expression<Func<TEntity, bool>> predicate);
>
> <http://code.google.com/p/unhaddins/source/browse/#svn/trunk/uNhAddIns...>Y
> son dos funciones diferentes por que GetLastPageNumber, se llama unicamente
> cuuando cambia el predicado. Eso da la libertad de en el presenter hacer
> cualquier cosa.

-- 
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano

Responder a