public void OnActionExecuted(ActionExecutedContext filterContext) { if (filterContext.Result is DialogSelectionResult) { DialogSelectionResult dialogSelectionResult = (DialogSelectionResult)filterContext.Result; if (filterContext.HttpContext.Request.IsJQueryAjaxRequest()) { if (dialogSelectionResult.IsCancelled) { filterContext.Result = new JsonResult { Data = new { cancel = 1 } } } ; else if (dialogSelectionResult.IsClientRedirect) { filterContext.Result = new JsonResult { Data = new AjaxRedirect(dialogSelectionResult.ReturnUrl) } } ; } if (!(filterContext.Result is JsonResult)) { filterContext.Result = new RedirectResult(dialogSelectionResult.ReturnUrl); } } }
/// <summary> /// Parse the DialogSelectionResult and redirect to the appropriate place. /// </summary> /// <param name="filterContext">The filter context.</param> public void OnActionExecuted(ActionExecutedContext filterContext) { DialogSelectionResult dialogSelectionResult = filterContext.Result as DialogSelectionResult; if (dialogSelectionResult == null) { return; } if (filterContext.HttpContext.Request.IsJQueryAjaxRequest() && dialogSelectionResult.IsClientRedirect) { filterContext.Result = new JsonResult { Data = new AjaxRedirect(dialogSelectionResult.ReturnUrl) } } ; if (!(filterContext.Result is JsonResult)) { filterContext.Result = new RedirectResult(dialogSelectionResult.ReturnUrl); } }