Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Repositories.NHibernate/EventoRepository.cs @ 237:51faeabfb9d9
Todos los tests en verde quitando al ponente principal
author | nelopauselli |
---|---|
date | Tue, 04 Oct 2011 21:30:55 -0300 |
parents | c61954d24c8c |
children | 5cc1681d3789 |
line wrap: on
line source
using System; using System.Collections.Generic; using System.Linq; using AltNetHispano.Agendas.Domain; using AltNetHispano.Agendas.Domain.Repositories; using NHibernate; using NHibernate.Linq; namespace AltNetHispano.Agendas.Repositories.NHibernate { public class EventoRepository : RepositoryBase<Evento>, IEventoRepository { public EventoRepository(ISessionFactory sessionFactory) : base(sessionFactory) { } public void Delete(Evento evento) { Session.Delete(evento); } public Evento Get(Guid vanId) { return Session.Get<Evento>(vanId); } public IList<Evento> GetActivos() { return Session.QueryOver<Evento>().Where( e => e.Estado != EventoPublicadoState.GetInstance()).List(); } public Evento GetPropuestaByTitulo(string titulo) { return Session.QueryOver<Evento>().Where(e => e.Estado == EventoPropuestoState.GetInstance() && e.Titulo==titulo).SingleOrDefault(); } public Evento GetNoPropuestoByTitulo(string titulo) { return Session.QueryOver<Evento>().Where(e => e.Estado != EventoPropuestoState.GetInstance() && e.Titulo == titulo) .SingleOrDefault(); } public void Update(Evento evento) { //No es necesario implementarlo } public bool ExistePonente(Persona ponente) { return Session.Query<Evento>().Where(ev => ev.Ponentes.Contains(ponente)).Any(); } public IList<Evento> GetByState(EventoState state) { return Session.QueryOver<Evento>().Where(e => e.Estado == state).List(); } } }