public Task <T> ExecuteAsync <T>(AsyncFunc <T> action) { if (_logger.IsEnabled(LogLevel.Information)) { var sw = Stopwatch.StartNew(); var result = action.Invoke(); sw.Stop(); return(result); } return(action.Invoke()); }