コード例 #1
0
ファイル: LogUserActivity.cs プロジェクト: ArcherCheng/party2
        public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next)
        {
            string currentUuserId = "0";
            var    temp           = context.HttpContext.Request.Path;

            var resultContext = await next();

            // var userId = int.Parse(resultContext.HttpContext.User.FindFirst(ClaimTypes.NameIdentifier).Value);
            // var repo = resultContext.HttpContext.RequestServices.GetService<IRepoMember>();
            // var user = await repo.Get(userId);
            // user.ActiveDate = DateTime.Now;
            // await repo.SaveAllAsync();

            if (resultContext.HttpContext.User.Identity.IsAuthenticated)
            {
                currentUuserId = resultContext.HttpContext.User.FindFirst(ClaimTypes.NameIdentifier).Value;
            }
            Aa9log20 log = new Aa9log20()
            {
                UserId      = currentUuserId,
                Refer       = resultContext.ActionDescriptor.AttributeRouteInfo.ToString(),
                Destination = resultContext.HttpContext.Request.Path,
                QueryString = resultContext.HttpContext.Request.QueryString.ToString(),
                Method      = resultContext.HttpContext.Request.Method,
                IpAddress   = resultContext.HttpContext.Request.Host.Value,
                RequestTime = System.DateTime.Now
            };
            var repo = resultContext.HttpContext.RequestServices.GetService <IRepoSysLog>();
            await repo.AddLogAsyn(log);
        }
コード例 #2
0
ファイル: RepoSysLog.cs プロジェクト: ArcherCheng/party2
 public async Task <int> AddLogAsyn(Aa9log20 log)
 {
     // await _db.Aa9log20.AddAsync(log);
     _db.Aa9log20.Add(log);
     return(await _db.SaveChangesAsync());
 }