En este caso estas obligado a usar DTO's? porque no usas las entidades del
modelo con Fetch bien seteado para ese tipo de trabajo?

En esta lista se ha discutido el tema, hay quienes hacen DTO solo si es
absolutamente necesario y quienes lo hacemos casi por defecto, pero hay
casos como este donde no parece la mejor alternativa.

Para cargar 10.000 objetos para solo lectura probablemente veas mejora
tambien usando IStatelessSession

Gustavo.

2010/1/4 Felipe <[email protected]>

> Necesito desplegar una grilla, la cual actualmente estoy transformando
> de un grafo de objetos persistentes a DTOs.
> Lamentablemente el rendimiento es muy bajo, ya que cada celda de la
> grilla es una instancia, e incluso se combina una fila con celdas que
> provienen de otros objetos persistentes. Dado lo anterior hay que
> hacer un manejo importante a nivel de DTO, por lo cual armo algunos
> Dictionary para mejorar la eficiencia y además dado que la grilla es
> jerárquica.
>
> Probé utilizando el comando "select new ClaseDTO(parametros)" para ver
> la mejora de rendimiento, y es notoria. Actualmente estoy recuperando
> cerca de 10.000 objetos, y esto afecta no sólo la recuperación, sino
> también el cierre de la Sesión.
>
> El problema es que dado que la estructura es compleja, el constructor
> de la ClaseDTO es enorme, y quería ver si existía alguna alternativa
> de que NHibernate me devolviera el grafo de objetos sin ningún tipo de
> control (persistence manager), de este modo usa las entidades como
> DTOs o Bean transientes o "detached" y debiera disminuir el tiempo de
> carga.
>
> La pregunta obvia es, ¿Es esto posible?, ¿mejoraría el rendimiento?
>
> Gracias,
>
> --
> Para escribir al Grupo, hágalo a esta dirección:
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano

-- 
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