public ActionResult UpdateAjaxTemplateDomainGrid([DataSourceRequest] DataSourceRequest request, [Bind(Prefix = "models")] List <TemplateDomainViewModel> updatedTemplateDomains, string level) { if (updatedTemplateDomains != null && ModelState.IsValid) { try { var deskId = updatedTemplateDomains.First(x => x.Selected).ServiceDeskId; if (deskId != null) { _templateProcessor.Execute(deskId.Value, Mapper.Map <List <TemplateDomainListItem> >(updatedTemplateDomains)); } } catch (Exception ex) { _contextManager.ResponseManager.StatusCode = 500; _contextManager.ResponseManager.AppendHeader("ErrorMessage", ex.Message); } } return(Json(updatedTemplateDomains.ToDataSourceResult(request, ModelState))); }