public ActionResult CategorieVerwijderen(int groepID, int id) { try { ServiceHelper.CallService <IGroepenService>(svc => svc.CategorieVerwijderen(id, false)); TempData["succes"] = Properties.Resources.WijzigingenOpgeslagenFeedback; return(RedirectToAction("Categorieen", new { Controller = "Groep", groepID = groepID })); } catch (FaultException <BlokkerendeObjectenFault <PersoonDetail> > ex) { // Categorie was niet leeg var model = new PersonenLinksModel(); BaseModelInit(model, groepID); model.Personen = ex.Detail.Objecten; model.CategorieID = id; model.VolledigeLijstUrl = Url.Action("List", "Personen", new RouteValueDictionary(new { id, groepID })); model.TotaalAantal = ex.Detail.Aantal; // Vis categorienaam op uit de gekoppelde categorieen van de personen. // Niet elegant, maar werkt wel. string categorieNaam = (from cat in model.Personen.First().CategorieLijst where cat.ID == id select cat).First().Naam; model.Titel = String.Format("Categorie '{0}' verwijderen", categorieNaam); return(View("CategorieVerwijderen", model)); // FIXME only reloads part of the previous page } }
public ActionResult CategorieVerwijderen(PersonenLinksModel model) { ServiceHelper.CallService <IGroepenService>(svc => svc.CategorieVerwijderen( model.CategorieID, true)); // forceer; ook als categorie niet leeg. return(RedirectToAction("Categorieen", new { Controller = "Groep", groepID = model.GroepID })); }