Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Repositories.NHibernate/NHibernateSessionPerRequestAttribute.cs @ 298:9bc60d166c8a
Se corrigieron los tests por el cambio de Patrocinador, para que no persista el logo en disco.
Se comentó el código de PatrocinadorApiController, que no se utiliza.
author | juanjose.montesdeocaarbos |
---|---|
date | Sun, 19 Feb 2012 16:00:38 -0300 |
parents | c8099df941bd |
children |
line wrap: on
line source
using System.Web.Mvc; using NHibernate; using NHibernate.Context; namespace AltNetHispano.Agendas.Repositories.NHibernate { public class NHibernateSessionPerRequestAttribute: ActionFilterAttribute { private readonly ISessionFactory _sessionFactory; public NHibernateSessionPerRequestAttribute(ISessionFactory sessionFactory) { _sessionFactory = sessionFactory; } public override void OnActionExecuting(ActionExecutingContext filterContext) { //iniciar session var session = _sessionFactory.OpenSession(); CurrentSessionContext.Bind(session); base.OnActionExecuting(filterContext); } public override void OnResultExecuted(ResultExecutedContext filterContext) { base.OnResultExecuted(filterContext); //cerrar session var session = _sessionFactory.GetCurrentSession(); session.Flush(); session.Close(); } } }