Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Repositories.NHibernate/EventoRepository.cs @ 235:c61954d24c8c
Quitando ponente principal y utilizando siempre la lista de ponentes
author | nelopauselli |
---|---|
date | Tue, 04 Oct 2011 20:42:35 -0300 |
parents | 7d838e7d83b3 |
children | 51faeabfb9d9 |
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; 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.QueryOver<Evento>().Where(ev => ev.Ponentes.Contains(ponente)).RowCount() > 0; } public IList<Evento> GetByState(EventoState state) { return Session.QueryOver<Evento>().Where(e => e.Estado == state).List(); } } }