public async Task <IActionResult> Add([FromBody] AlbumGroup albumGroup)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    AlbumGroupDetail group = await _repository.AddAsync(albumGroup);

                    return(CreatedAtRoute(
                               new { controller = "album", action = nameof(Get), key = group.Key }, group));
                }
                catch (RepositoryException e)
                {
                    return(BadRequest(new ApiErrorRep(e.Message)));
                }
                catch (Exception e)
                {
                    _logger.LogError("AddAlbum", e, "Error adding album");
                    return(StatusCode(500, new ApiErrorRep("Unknown error")));
                }
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
        public async Task <IActionResult> Add(CreateAlbumGroupViewModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var result = await _albumGroupRepo.AddAsync(new AlbumGroup
                    {
                        Key  = model.Key,
                        Name = model.Name
                    });

                    this.SetBootstrapPageAlert("Success", "Album group added", BootstrapAlertType.success);
                    return(RedirectToAction(nameof(Index)));
                }
                catch (Exception e)
                {
                    if (e is RepositoryException)
                    {
                        ModelState.AddModelError(nameof(model.Key), e.Message);
                    }
                    else
                    {
                        ModelState.AddModelError(nameof(model.Key), "Unknown error");
                        _log.LogError("AddAlbumGroup", e, "Error adding group");
                    }
                    return(View(model));
                }
            }
            else
            {
                return(View(model));
            }
        }