view Agendas/trunk/src/Agendas.Repositories.NHibernate/RepositoryBase.cs @ 256:12d72efb43ca

Combinar
author juanjose.montesdeocaarbos
date Tue, 18 Oct 2011 07:26:59 -0300
parents 70c5cab59054
children
line wrap: on
line source

using System;
using AltNetHispano.Agendas.Domain;
using NHibernate;

namespace AltNetHispano.Agendas.Repositories.NHibernate
{
	public class RepositoryBase<T> where T : Identificable
	{
		private readonly ISessionFactory _sessionFactory;

		protected RepositoryBase(ISessionFactory sessionFactory)
		{
			_sessionFactory = sessionFactory;
		}

		protected ISession Session { get { return _sessionFactory.GetCurrentSession(); } }

		public void Save(T obj)
		{
			Session.Save(obj);
		}

        public T Get(Guid id)
        {
			return Session.Get<T>(id);
			//return Session.QueryOver<T>().Where(i => i.Id == id).SingleOrDefault();
        }

	}
}