public async Task <IActionResult> OnPostDelete(int?recipeId) { if (!recipeId.HasValue) { HasError = true; ViewData["Error"] = "Δεν μπορείτε να περάσετε κενό ID."; return(Page()); } RecipeHeader dbRecipeHeader = await recipeRepository.GetRecipeHeader(recipeId.Value); if (dbRecipeHeader is null) { HasError = true; ViewData["Error"] = "Δεν υπάρχει εγγραφή με το ID που δόθηκε."; return(Page()); } IEnumerable <RecipeDetail> dbRecipeDetails = await recipeRepository.GetRecipeDetails(dbRecipeHeader.Id); foreach (RecipeDetail recipeDetail in dbRecipeDetails) { if (!await recipeRepository.DeleteRecipeDetail(recipeDetail)) { HasError = true; ViewData["Error"] = "Δεν μπορέσαμε να σβήσουμε την εγγραφή σας."; return(Page()); } } if (!await recipeRepository.DeleteRecipeHeader(dbRecipeHeader)) { HasError = true; ViewData["Error"] = "Δεν μπορέσαμε να σβήσουμε την εγγραφή σας."; return(Page()); } TempData["SuccessMessage"] = "Η διαγραφή του στοιχείου έγινε με επιτυχία."; return(RedirectToPage(Url.Content("~/Admin/RecipeList"))); }