public override void OnActionExecuting(ActionExecutingContext context) { var user = context.HttpContext.Session.GetCurrentUser(); var area = context.RouteData.Values["area"]?.ToString(); if (user?.IsAdmin == true && area != null) { var userName = user.UserName; var controller = context.RouteData.Values["controller"].ToString(); if (controller == "LocalLog") { return; } var action = context.RouteData.Values["action"].ToString(); var httpMethod = (context.GetActionAttributesByContext(typeof(HttpMethodAttribute)).FirstOrDefault() as HttpMethodAttribute) .HttpMethods.FirstOrDefault(); Task.Factory.StartNew(() => LogHelper.Log(new LogItemEntity($"{userName} 访问{context.ActionDescriptor.DisplayName},方式:{httpMethod}" , userName , LogType.Info , $"{area}.{controller}.{action}"))); } base.OnActionExecuting(context); }