// GET: MoviePlaylists/Details/5
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var album = await _context.Albums
                        .FirstOrDefaultAsync(m => m.ID == id);

            List <MusicViewModels> musics = new List <MusicViewModels>();

            foreach (var music in _context.MusicAlbums.Include(m => m.Musics).Where(m => m.AlbumID == id))
            {
                musics.Add(new MusicViewModels()
                {
                    Titel = music.Musics.Titel, ReleaseDate = music.Musics.ReleaseDate, Lenght = music.Musics.Lenght
                });
            }
            if (album == null)
            {
                return(NotFound());
            }
            var model = new MusicAlbumViewModel()
            {
                ID     = album.ID,
                Naam   = album.Naam,
                Musics = musics,
            };

            return(View(model));
        }
 public async Task <IActionResult> Create(MusicAlbumViewModel model)
 {
     if (ModelState.IsValid)
     {
         string uniqueFileName = null;
         if (model.Photo != null)
         {
             string UploadsFolder = Path.Combine(hostingEnvironment.WebRootPath, "images");
             uniqueFileName = GetUniqueFilmName(model.Photo.FileName);
             string filePath = Path.Combine(UploadsFolder, uniqueFileName);
             model.Photo.CopyTo(new FileStream(filePath, FileMode.Create));
         }
         _context.Add(new Album()
         {
             ID = model.ID, Naam = model.Naam, PhotoPath = uniqueFileName
         });
         await _context.SaveChangesAsync();
     }
     return(RedirectToAction(nameof(Index)));
 }
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }
            var album = await _context.Albums.FindAsync(id);

            if (album == null)
            {
                return(NotFound());
            }
            var model = new MusicAlbumViewModel()
            {
                ID        = album.ID,
                Naam      = album.Naam,
                PhotoPath = album.PhotoPath,
            };

            return(View(model));
        }
        public async Task <IActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var album = await _context.Albums
                        .FirstOrDefaultAsync(m => m.ID == id);

            if (album == null)
            {
                return(NotFound());
            }
            var model = new MusicAlbumViewModel()
            {
                ID   = album.ID,
                Naam = album.Naam,
            };

            return(View(model));
        }