public async Task OnAuthorizationAsync(AuthorizationFilterContext context)
        {
            if (SkipAuthorization(context))
            {
                return;
            }

            await Task.Factory.StartNew(() =>
            {
                if (Context.CurrentAccount.AccountId <= 0)
                {
                    var cookieUser = _cookiesManager.GetObject <CurrentAccount>(SessionKey.EzTaskAuthen);
                    if (cookieUser != null)
                    {
                        Context.CurrentAccount.Set(cookieUser);
                        Context.SetLanguageLocalization(cookieUser.Language);
                    }
                }

                if (Context.CurrentAccount.AccountId <= 0)
                {
                    var returnUrl  = context.HttpContext.Request.GetEncodedUrl();
                    context.Result = new RedirectToActionResult("Login", "Account", new { redirect = returnUrl });
                }
            });
        }
        public override void OnActionExecuting(ActionExecutingContext actionContext)
        {
            if (Context.CurrentAccount.AccountId <= 0)
            {
                var cookieUser = _cookiesManager.GetObject <CurrentAccount>(SessionKey.EzTaskAuthen);
                if (cookieUser != null)
                {
                    Context.SetLanguageLocalization(cookieUser.Language);
                }
            }

            if (Context.CurrentAccount.AccountId <= 0)
            {
                Context.SetLanguageLocalization("");
            }

            base.OnActionExecuting(actionContext);
        }