public override async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next) { await next(); ILogDataOperations logDataOperations = context.HttpContext.RequestServices.GetService(typeof(ILogDataOperations)) as ILogDataOperations; if (context.HttpContext.User.GetCurrentUser() != null) { await logDataOperations.CreateUserActivityAsync(context.HttpContext.User.GetCurrentUser().Email, context.HttpContext.Request.Path); } }
/// <summary> /// After the action execution, we will get an instance of ILogDataOperations /// from RequestServices of HttpContext and call the CreateUserActivityAsync method, /// which will create the user activity log at Azure Table storage /// </summary> public override async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next) { await next(); // Criar instancia manualmente // var logger = context.HttpContext.RequestServices.GetService(typeof(ILogDataOperations)) as ILogDataOperations; await _logDataOperations .CreateUserActivityAsync( context.HttpContext.User.GetCurrentUserDetails().Email, context.HttpContext.Request.Path); //base.OnActionExecutionAsync(context, next); }