/// <summary> /// Metodo para listar eventos que se encuentran en la lista /// </summary> /// <returns>Devuelve los titulos de los eventos</returns> public string ListarEvento() { string variable = "- "; if (this.Evento.Count == 0) { CalendarioVacioException Excepcion = new CalendarioVacioException("El calendario seleccionado se encuentra vacío"); throw Excepcion; } else { foreach (Evento elemento in this.Evento) { variable = variable + elemento.Titulo + " - "; } } return(variable); }
/// <summary> /// Metodo para filtrar eventos por su titulo /// </summary> /// <param name="pTituloEvento">Titulo por el cual se desea buscar eventos</param> /// <returns> Devuelve una lista de eventos con el titulo pTituloEvento </returns> public Calendario FiltrarPor(string pTituloEvento) { Calendario eventos = new Calendario(pTituloEvento); foreach (Evento elemento in this.Evento) { if (elemento.Titulo == pTituloEvento) { eventos.AgregarEvento(elemento.Titulo, elemento.FechaInicio, elemento.FechaFin, elemento.Frecuencia); } } if (eventos.Evento.Count == 0) { CalendarioVacioException Excepcion = new CalendarioVacioException("No se han encontrado eventos"); throw Excepcion; } return(eventos); }
/// <summary> /// Metodo para filtrar eventos entre la primer fecha y la segunda fecha /// </summary> /// <param name="pFecha1">Primer fecha </param> /// <param name="pFecha2">Segunda Fecha</param> /// <returns>Devuelve una lista de los eventos que cumplan la condición </returns> public Calendario FiltrarPor(DateTime pFecha1, DateTime pFecha2) { Calendario eventos = new Calendario("EventosPorFechas"); foreach (Evento elemento in this.Evento) { if (elemento.FechaInicio >= pFecha1 && elemento.FechaFin <= pFecha2 && elemento.FechaFin <= pFecha2 && elemento.FechaInicio >= pFecha1) { eventos.AgregarEvento(elemento.Titulo, elemento.FechaInicio, elemento.FechaFin, elemento.Frecuencia); } } if (eventos.Evento.Count == 0) { CalendarioVacioException Excepcion = new CalendarioVacioException("No se han encontrado eventos"); throw Excepcion; } return(eventos); }