public async Task <IActionResult> getFriendTopScores([Required] string area, int length = 10) { try { var claimsIdentity = this.User.Identity as ClaimsIdentity; var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value; GeoPointUser user = await _userManager.FindByIdAsync(userId); if (user.Friends != null) { IEnumerable <Score> scores = await _scoreRepo.GetFriendTopScoresAsync(user, area.ToUpper(), length); foreach (Score s in scores) { s.User.PasswordHash = null; } return(Ok(scores)); } return(BadRequest("no friends yet")); } catch (Exception e) { _logger.LogError($"\r\n\r\nError thrown on ScoresController - GetFriendTopScores method (" + DateTime.UtcNow.ToString() + ") \r\nException thrown when trying to Get Friend Top Scores: " + e + "\r\n\r\n"); return(BadRequest("Failed to get friend topscores")); } }