Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Repositories.NHibernate/EventoRepository.cs @ 209:a36a76bd6ec3
Se soluciona ticket 173. Se agrega eliminación de personas siempre y cuando no esté asociada a ninguna van.
author | alabra |
---|---|
date | Wed, 24 Aug 2011 19:27:30 -0300 |
parents | 3639803112c6 |
children | 7d838e7d83b3 |
line wrap: on
line source
using System; using System.Collections.Generic; 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 void Update(Evento evento) { //No es necesario implementarlo } public bool ExistePonente(Persona ponente) { return Session.QueryOver<Evento>().Where(ev => ev.Ponente == ponente).RowCount() > 0; } public IList<Evento> GetByState(EventoState state) { return Session.QueryOver<Evento>().Where(e => e.Estado == state).List(); } } }