Amss.Boilerplate.Web.Common.Filters.BusinessValidationFilterAttribute.OnActionExecuted C# (CSharp) Method

OnActionExecuted() public method

public OnActionExecuted ( System.Web.Mvc.ActionExecutedContext filterContext ) : void
filterContext System.Web.Mvc.ActionExecutedContext
return void
        public override void OnActionExecuted(ActionExecutedContext filterContext)
        {
            var transformedException = filterContext.Exception.TransformException(WebContainerExtension.ValidationPolicy);
            var exception = transformedException as BusinessValidationException;
            if (exception != null)
            {
                // put error into ViewData for custom handling - it's not used right now
                filterContext.Controller.ViewData.Add("Error", exception.Errors);

                filterContext.Controller.ViewData.ModelState.FillFrom(exception);

                filterContext.ExceptionHandled = true;
                filterContext.Result = new ViewResult
                    {
                        // if view is not defined - use action name by default
                        ViewName = this.view ?? filterContext.RouteData.Values["action"].ToString(),
                        TempData = filterContext.Controller.TempData,
                        ViewData = filterContext.Controller.ViewData
                    };
            }
        }