示例#1
0
 public static Task <TResult> PutAsync <TContent, TResult>(this IWebApiClient webApiClient, Priority priority, string path, int retryCount, Func <int, TimeSpan> sleepDurationProvider, TContent content = default(TContent), IHttpContentResolver contentResolver = null, CancellationToken cancellationToken = default(CancellationToken))
 {
     return(PollyDecorator(
                () => webApiClient.PutAsync <TContent, TResult>(priority, path, cancellationToken: cancellationToken),
                retryCount,
                sleepDurationProvider));
 }
示例#2
0
        static void UpdateCached()
        {
            Console.WriteLine("Type in the IMDB id of the movie.");
            Console.Write("IMDB ID: ");
            var id = Console.ReadLine();

            if (string.IsNullOrEmpty(id))
            {
                Console.WriteLine("Update must have an id.");
                Console.ReadLine();
                return;
            }

            Console.Clear();

            try
            {
                var movie = webApiClient.GetAsync <IEnumerable <Movie> >("https://localhost:5001", $"cachedEntries" + $"?$Filter=imdbID eq '{id}'").Result.FirstOrDefault();

                if (movie is null)
                {
                    Console.WriteLine("No movie found.");
                    Console.ReadLine();
                    return;
                }

                movie = ReadMovie(movie);

                webApiClient.PutAsync("https://localhost:5001", $"cachedEntries/{id}", movie);
                OutputMovie(movie);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }

            Console.ReadLine();
        }