public Agencia FiltrarAlojamientos(String tipoAlojamiento, String ciudad, String barrio, double precioMin, double precioMax, String estrellas, String personas) { Agencia alojamientosFiltrados = null; switch (tipoAlojamiento) { case "todos": alojamientosFiltrados = this.agencia.GetAllAlojamientos(); break; case "hotel": alojamientosFiltrados = this.agencia.GetHoteles(); break; case "cabaña": alojamientosFiltrados = this.agencia.GetCabanias(); break; } if (alojamientosFiltrados == null) { return(null); } if (ciudad != "todas") { alojamientosFiltrados = alojamientosFiltrados.GetAlojamientosPorCiudad(ciudad); if (alojamientosFiltrados == null) { return(null); } } if (barrio != "todos") { alojamientosFiltrados = alojamientosFiltrados.GetAlojamientosPorBarrio(barrio); if (alojamientosFiltrados == null) { return(null); } } if (precioMin - precioMax != 0) { alojamientosFiltrados = alojamientosFiltrados.GetAllAlojamientos(precioMin, precioMax); if (alojamientosFiltrados == null) { return(null); } } if (estrellas != "todas") { alojamientosFiltrados = alojamientosFiltrados.GetAllAlojamientos(int.Parse(estrellas)); if (alojamientosFiltrados == null) { return(null); } } if (personas != "todas") { alojamientosFiltrados = alojamientosFiltrados.GetAlojamientosPorCantidadDePersonas(int.Parse(personas)); if (alojamientosFiltrados == null) { return(null); } } return(alojamientosFiltrados); }