public ActionResult AdminUnit_Create([DataSourceRequest] DataSourceRequest request, AdminUnitViewModel adminUnitViewModel, int? paramParentID, int? paramAdminUnitTypeID)
 {
     if (adminUnitViewModel != null && ModelState.IsValid)
     {
         try
         {
             if (paramParentID.HasValue)
             {
                 adminUnitViewModel.ParentID = (int)paramParentID;
             }
             if (paramAdminUnitTypeID.HasValue)
             {
                 adminUnitViewModel.AdminUnitTypeID = (int)paramAdminUnitTypeID;
             }
             var adminUnit = AdminUnitViewModelBinder.BindAdminUnit(adminUnitViewModel);
             _adminUnitService.AddAdminUnit(adminUnit);
             ModelState.AddModelError("Success", "Success: Admin Unit Registered.");
         }
         catch (Exception ex)
         {
             ModelState.AddModelError("Errors", "Error: FDP not registered. All fields need to be filled.");
         }
     }
     return Json(new[] { adminUnitViewModel }.ToDataSourceResult(request, ModelState));
 }
 public static AdminUnit BindAdminUnit(AdminUnitViewModel adminUnitViewModel, AdminUnit adminUnit = null)
 {
     return adminUnit ?? new AdminUnit()
     {
         AdminUnitID = adminUnitViewModel.AdminUnitID,
         Name = adminUnitViewModel.AdminUnitName,
         AdminUnitTypeID = adminUnitViewModel.AdminUnitTypeID,
         ParentID = adminUnitViewModel.ParentID
     };
 }
 public ActionResult AdminUnit_Destroy(AdminUnitViewModel adminUnitViewModel)
 {
     var au = _adminUnitService.FindById(adminUnitViewModel.AdminUnitID);
     try
     {
         _adminUnitService.DeleteAdminUnit(au);
         return RedirectToAction("Index");
     }
     catch (Exception e)
     {
         ModelState.AddModelError("Errors", "Unable to delete FDP");
     }
     return Json(ModelState.ToDataSourceResult());
 }
 public ActionResult AdminUnit_Update([DataSourceRequest] DataSourceRequest request, AdminUnitViewModel adminUnitViewModel)
 {
     if (ModelState.IsValid)
     {
         try
         {
             var adminUnit = AdminUnitViewModelBinder.BindAdminUnit(adminUnitViewModel);
             _adminUnitService.EditAdminUnit(adminUnit);
            // ModelState.AddModelError("Success", "Success: Updated.");
             return Json(new[] { adminUnitViewModel }.ToDataSourceResult(request, ModelState));
         }
         catch (Exception ex)
         {
             ModelState.AddModelError("Errors", "Error: not registered. All fields need to be filled.");
         }
     }
     return Json(new[] { adminUnitViewModel }.ToDataSourceResult(request, ModelState));
 }