Example #1
0
        public async Task UpdateAllSeiyuu()
        {
            logger.Log("Started UpdateAllSeiyuu job.");

            int  page             = 0;
            int  pageSize         = 100;
            long totalSeiyuuCount = await seiyuuRepository.CountAsync(x => true);

            while (page * pageSize < totalSeiyuuCount)
            {
                var seiyuuCollection = await seiyuuRepository.GetOrderedPageAsync(PredicateBuilder.True <Data.Model.Seiyuu>(), "MalId ASC", page, pageSize);

                foreach (Seiyuu seiyuu in seiyuuCollection.Results)
                {
                    Person seiyuuFullData = await SendSinglePersonRequest(seiyuu.MalId, 0);

                    if (seiyuuFullData != null)
                    {
                        logger.Log($"Parsed id:{seiyuu.MalId}, {seiyuu.Name}");

                        await UpdateSeiyuu(seiyuu, seiyuuFullData);
                    }
                    else
                    {
                        logger.Error($"Error on {seiyuu.MalId} - not found");
                        continue;
                    }
                }

                page++;
            }
            logger.Log("Finished UpdateAllSeiyuu job.");
        }