/// <summary>
        /// Вызывается инфраструктурой MVC до выполнения метода действия.
        /// </summary>
        /// <param name="filterContext">Контекст фильтра.</param>
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            ControllerEx controller = filterContext.Controller as ControllerEx;

            if (controller != null)
            {
                string clientContextData = filterContext.HttpContext.Request["clientContext"];
                if (!String.IsNullOrEmpty(clientContextData))
                {
                    controller.ClientContext = Json.Deserialize <dynamic>(clientContextData);
                    Debug.WriteLine("Клиентский контекст: {0}", clientContextData);
                }
            }
        }
        /// <summary>
        /// Вызывается инфраструктурой MVC до выполнения метода действия.
        /// </summary>
        /// <param name="filterContext">Контекст фильтра.</param>
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            // Verify if a XMLHttpRequest is fired.
            // This can be done by checking the X-Requested-With
            // HTTP header.
            ControllerEx controller = filterContext.Controller as ControllerEx;

            if (controller != null)
            {
                string ajaxRequestHeader = filterContext.HttpContext.Request.Headers["X-Requested-With"];
                if (!String.IsNullOrEmpty(ajaxRequestHeader) && ajaxRequestHeader == "XMLHttpRequest")
                {
                    controller.IsAjaxRequest = true;
                }
                else
                {
                    controller.IsAjaxRequest = false;
                }
            }
        }