Gracias Fabio Me he topado con algo que se veia venir, y que mejor momento que ahora,
Patrones de manejo de sesión Estaba utilizando Session-per-Call (anti pattern) (si lo se esta mal y ahora lo cambio), y para la aplicacion asp net mvc empezare a utilizar session-per-request Aqui Fabio menciona muchas cosas interesantes http://fabiomaulo.blogspot.com/2009/04/empezando-con-nh-session.html 1.- NHibernate.Context contiene la clase WebSessionContext para manejo de sessiones en WEB y ThreadStaticSessionContext para manejo de sesiones en tests. Usando WebSessionContext no necesitan nada mas (a parte una implementación de IHttpModule) para manejar session-per-request y/o session-per-conversation en entorno WEB. Pregunta: algun link o comentario donde profundizar una implementación de IHttpModule ? requiero ver ejemplos para ir aprendiendo !!! 2.- uNhAddIns implementa todos los patterns. Como la implementación en NHibernate-Core tambien las implementaciones en uNhAddIns se basan en el uso de GetCurrentSession. Las implementaciones son disponibles en el namespace uNhAddIns.SessionEasier y uNhAddIns.Web.SessionEasier, estoy tratando de abrir el proyecto de ejemplo pero al parecer fue hecho en otra version diferente a VS2008, links y comentarios al respecto me ayudarian bastante Estoy pensando en utilizar la opcion 2, pero quisiera saber los porques saludos El día 25 de mayo de 2010 15:48, Fabio Maulo <[email protected]> escribió: > http://fabiomaulo.blogspot.com/2009/09/configure-sessionfactory-providers.html > > 2010/5/25 Edgar Ramos <[email protected]> >> >> Gente un saludo a todos, mi inquietud es la siguiente >> >> Mi aplicacion será tipo asp net mvc, estara dividida en layers, mis >> dao/repository se veran como algo similar (tomado de ejemplos >> descargados) >> >> public class Repository<T> : IRepository<T> >> { >> private readonly ISessionFactory _factory; >> >> public Repository(ISessionFactory factory) >> { >> _factory = factory; >> } >> >> protected ISession Session >> { >> get { return _factory.GetCurrentSession(); } >> } >> >> public T Get(object id) >> { >> return Session.Get<T>(id); >> } >> >> .............. >> >> Por lo que he podido apreciar (van's, ejemplos, etc) esta es una best >> practice, y aqui mi pregunta con el afan de hacer bien las cosas >> >> 1.- El esquema anterior me sirve si utilizo una bdd, (tomado del libro >> NHibernate In Action) >> -------------------------- >> if your application accesses multiple databases using NHibernate, >> you’ll need a >> SessionFactory for each database. >> ------------------------- >> Pero mi requerimiento es poder consultar datos de tablas en otras >> bases de datos (mismo servidor donde se encuentra el manejador de base >> de datos)(ya sea por medio de vistas o sp, etc), por el momento no >> requeriero persistir mis entidades creadas y utilizadas en mi bdd1 a >> la bdd2 >> >> 2.- mis dao/repository cambiarian ?, se añade una layer mas de este >> tipo para manejar el punto 1 ? >> >> 3.- En un post anterior me parece sugirieron implementar >> ConnectionProvider ? >> >> En fin cual seria la forma correcta ?, saludos y gracias por vuestros >> comentarios >> >> Edgar >> >> -- >> Para escribir al Grupo, hágalo a esta dirección: >> [email protected] >> Para más, visite: http://groups.google.com/group/NHibernate-Hispano > > > -- > Fabio Maulo > > -- > 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
