view Agendas/trunk/src/Agendas.NHibernate/SessionScope.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 1deccd6c3cb2
children
line wrap: on
line source

using System;
using NHibernate;
using NHibernate.Context;

namespace Agendas.NHibernate
{
	public class SessionScope : IDisposable
	{
		private readonly ISessionFactory _sessionFactory;

		public SessionScope(ISessionFactory sessionFactory)
		{
			_sessionFactory = sessionFactory;

			var session = _sessionFactory.OpenSession();
			CurrentSessionContext.Bind(session);
		}

		public void Dispose()
		{
			var session = _sessionFactory.GetCurrentSession();

			session.Flush();
			session.Close();
		}
	}
}