public async Task <IActionResult> DeleteArtist(ArtistDeleteModel model)
        {
            return(await ExecuteExceptionsHandledAsyncActionResult(async() =>
            {
                if (!ModelState.IsValid)
                {
                    return View(model);
                }

                if (!model.DeleteConfirmed)
                {
                    Artist artistFromDb = await _artistEntityBusiness.FindEntityById(model.ArtistId);
                    model = _artistEntityBusiness.Map <Artist, ArtistDeleteModel>(artistFromDb);
                    ModelState.AddModelError("", "Please confirm that you would really like to delete this item.");
                    return View(model);
                }

                Artist artist = _artistEntityBusiness.Map <ArtistDeleteModel, Artist>(model);
                artist.Deleted = true;
                artist.ObjectState = ObjectState.Deleted;
                await _artistEntityBusiness.PersistEntity(artist);
                TempData["deletedOk"] = true;
                return RedirectToAction("Artists");
            }));
        }
 public async Task <IActionResult> DeleteArtist(long id)
 {
     return(await ExecuteExceptionsHandledAsyncActionResult(async() =>
     {
         Artist fromDb = await _artistEntityBusiness.FindEntityById(id);
         ArtistDeleteModel model = _artistEntityBusiness.Map <Artist, ArtistDeleteModel>(fromDb);
         return View(model);
     }));
 }