public ActionResult SelectSections(List <SectionModel> sections) { if (ModelState.IsValid) { List <DBSectionModel> removePositions = new List <DBSectionModel>(); List <DBSectionModel> addPositions = new List <DBSectionModel>(); foreach (SectionModel section in sections) { if (section.IsSelected) { addPositions.Add(ConvertSectionModel(section)); } else { removePositions.Add(ConvertSectionModel(section)); } } IDBConnector db = DBConnectorFactory.GetDBConnector(); db.InsertPositions(addPositions); db.DeletePositions(removePositions); return(RedirectToAction(StringKeys.EDIT_FROM_ID, StringKeys.PAGE_CONTROLLER, new { pageID = sections[0].PageID })); } return(View(sections)); }