public ActionResult Verwijderen(int groepID, int id)
        {
            try
            {
                ServiceHelper.CallService <IGroepenService>(svc => svc.FunctieVerwijderen(id, false));
                TempData["succes"] = Properties.Resources.WijzigingenOpgeslagenFeedback;
                return(RedirectToAction("Functies", new { Controller = "Groep", groepID = groepID }));
            }
            catch (FaultException <BlokkerendeObjectenFault <PersoonLidInfo> > ex)
            {
                // Functie was niet leeg

                var model = new LedenLinksModel();
                BaseModelInit(model, groepID);

                model.Leden             = ex.Detail.Objecten;
                model.FunctieID         = id;
                model.VolledigeLijstUrl = Url.Action("Lijst", "Leden", new RouteValueDictionary(new { groepID, functieID = id }));
                model.TotaalAantal      = ex.Detail.Aantal;

                // Vis functienaam op uit de gekoppelde functies van de leden.
                // Niet elegant, maar werkt wel.

                var functieNaam = (from f in model.Leden.First().LidInfo.Functies
                                   where f.ID == id
                                   select f).First().Naam;
                model.Titel = String.Format("Functie '{0}' verwijderen", functieNaam);

                return(View("Verwijderen", model)); // FIXME only reloads part of the previous page
            }
        }
        public ActionResult Verwijderen(LedenLinksModel model)
        {
            ServiceHelper.CallService <IGroepenService>(svc => svc.FunctieVerwijderen(
                                                            model.FunctieID,
                                                            true)); // forceer; ook als er nog mensen zijn met die functie

            return(RedirectToAction("Functies", new { Controller = "Groep", groepID = model.GroepID }));
        }