private static int CalculateNextPageNumber(TvMazeDbContext tvMazeDbContext, TvMazeOptions tvMazeConfiguration)
        {
            try
            {
                var page = 0;

                if (!tvMazeDbContext.Set <Show>().Any())
                {
                    return(page);
                }

                var lastAddedShowId = tvMazeDbContext.Set <Show>().OrderBy(s => s.Id).Last().Id;

                page = Convert.ToInt32(Math.Round(lastAddedShowId / tvMazeConfiguration.MaximumNumberOfShowsPerPage,
                                                  MidpointRounding.ToZero));

                return(page);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #2
0
 public static void AddTvMazeClient(this IServiceCollection services, TvMazeOptions options)
 {
     services.AddHttpClient <ITvMazeService, TvMazeService>()
     .ConfigureHttpClient(i => { i.BaseAddress = new Uri(options.BaseAddress); })
     .AddPolicyHandler(GetRetryPolicy(Int32.MaxValue, options.RetryTimeout));
 }
Пример #3
0
 public TvMazeConnector(HttpClient httpClient, IOptions <TvMazeOptions> options)
 {
     _httpClient = httpClient;
     _options    = options.Value;
 }