private async Task <bool> RefreshMatchesListAsync() { DisposeGuard(); ICollection <ChessGameDetails> matches; try { matches = IsAnonymous ? new List <ChessGameDetails>() : (await _client.GetMatchesWithDetailsAsync(_loginResult?.TokenString)).ToList(); } catch (Exception e) { OnBackgroundError(ServiceConnectionEventArgs.Error(e)); return(false); } var oldMatches = Matches.Select(x => x.Id).ToList(); var newMatches = matches.Select(x => x.Id).ToList(); _matches.Clear(); _matches.AddRange(matches); return(!oldMatches.SequenceEqual(newMatches)); }
public async Task <IEnumerable <ChessGame> > GetMatchesWithDetails() { await Login(); return(await _client.GetMatchesWithDetailsAsync(JwtToken)); }