public List <Album> obtenerAlbumesParaBanda(Banda banda) { return(Albumes.Where(x => x.Banda.Id == banda.Id). Include(x => x.Canciones). ThenInclude(c => c.Reproducciones). ToList()); }
public List <Albumes> CargarPorIdGenero(int idGenero) { List <AlbumGenero> relacionAlbumGenero = new List <AlbumGenero>(); List <Albumes> albumesCargados = new List <Albumes>(); using (UVFYContext context = new UVFYContext()) { try { relacionAlbumGenero = context.AlbumGenero.Where(a => a.GenerosId == idGenero).ToList(); } catch (SqlException e) { Console.WriteLine(e.ToString()); throw new AccesoADatosException(e.Message, e); } foreach (AlbumGenero albumGenero in relacionAlbumGenero) { try { Albumes album = CargarPorId(albumGenero.AlbumesId); albumesCargados.Add(album); } catch (SqlException e) { Console.WriteLine(e.ToString()); throw new AccesoADatosException(e.Message, e); } } } return(albumesCargados); }
public bool Eliminar(int idAlbum) { bool respuesta = false; Albumes album = CargarPorId(idAlbum); CancionDAO cancionDAO = new CancionDAO(); try { List <Canciones> cancionesEnAlbum = cancionDAO.CargarPorIdAlbum(album.Id); foreach (Canciones cancion in cancionesEnAlbum) { cancionDAO.CambiarEstadoDeCancion(cancion.Id, Enumeradores.EstadoDeCancion.PrivadaDeArtista); } using (UVFYContext context = new UVFYContext()) { context.Albumes.Remove(album); context.SaveChanges(); } respuesta = true; } catch (SqlException e) { Console.WriteLine(e.ToString()); throw new AccesoADatosException(e.Message, e); } return(respuesta); }
public bool ValidarParaGuardado(Albumes albumAValidar) { bool resultado = false; if (Servicios.ServiciosDeValidacion.ValidarCadena(albumAValidar.Nombre)) { if (Servicios.ServiciosDeValidacion.ValidarCadena(albumAValidar.Descripcion)) { resultado = true; } } return(resultado); }
public void Buscar(string busqueda) { if (Albumes != null) { if (busqueda != string.Empty) { AlbumesVisibles = Albumes.FindAll(c => c.Nombre.ToLower().Contains(busqueda.ToLower())).ToList(); } else { AlbumesVisibles = albumesCargados; } ActualizarLista(); } }
public int RegistrarAlbum(Albumes albumARegistrar, List <int> generos) { int idDeAlbumGuardado = 0; if (ValidarParaGuardado(albumARegistrar)) { ArtistaDAO artistaDAO = new ArtistaDAO(); albumARegistrar.Artistas = artistaDAO.CargarPorId(albumARegistrar.ArtistasId); foreach (int idGenero in generos) { AlbumGenero albumGenero = new AlbumGenero(); GeneroDAO generoDAO = new GeneroDAO(); albumGenero.Generos = generoDAO.CargarPorId(idGenero); albumARegistrar.AlbumGenero.Add(albumGenero); } using (UVFYContext context = new UVFYContext()) { try { foreach (AlbumGenero cancionGenero in albumARegistrar.AlbumGenero) { context.Attach(cancionGenero.Generos); } context.Albumes.Add(albumARegistrar); context.Attach(albumARegistrar.Artistas); context.SaveChanges(); idDeAlbumGuardado = albumARegistrar.Id; } catch (SqlException e) { Console.WriteLine(e.ToString()); throw new AccesoADatosException(e.Message, e); } } } else { throw new ValidacionFallidaException("Album invalido"); } return(idDeAlbumGuardado); }
public Albumes CargarPorIdCancion(int idCancion) { Albumes albumCargado = new Albumes(); using (UVFYContext context = new UVFYContext()) { try { albumCargado = context.Albumes.FirstOrDefault(a => a.Canciones.Any(b => b.Id == idCancion)); } catch (SqlException e) { Console.WriteLine(e.ToString()); throw new AccesoADatosException(e.Message, e); } if (albumCargado == null) { throw new RecursoNoExisteException(); } } return(albumCargado); }
public List <Album> obtenerAlbumes() => Albumes. Include(c => c.Banda). Include(a => a.Canciones). ThenInclude(c => c.Reproducciones). ToList();
public void altaAlbum(Album album) { Albumes.Add(album); SaveChanges(); }
public int CantidadDeReproduccionesPorBanda() { return(Albumes.Sum(a => a.CantidadDeReproducciones())); }