Beispiel #1
0
        //TODO: abstract this better

        private Dictionary <long, string> GetAgentNames(List <long?> ids, string dataSource)
        {
            //Endpoint maxes out at 1k ids passed
            var chunkedIds = ids.ChunkBy(1000);

            //TODO: dont like using swaggger classes
            var names = new List <GetCharactersNames200Ok>();

            foreach (var chunk in chunkedIds)
            {
                var namesResult = _characterApi.GetCharactersNames(chunk, dataSource);

                names.AddRange(namesResult);
            }

            return(names
                   .Where(x => x.CharacterId.HasValue)
                   .ToDictionary(x => x.CharacterId.GetValueOrDefault(), x => x.CharacterName));
        }