From 54633f4487806c473d96cd9f2638394a064f6126 Mon Sep 17 00:00:00 2001 From: Steve Dunn Date: Tue, 22 Oct 2024 06:56:11 +0100 Subject: [PATCH] Update RefitRunner.cs Added example of using Refit with query parameters rather than just routing --- .../RefitExample/RefitRunner.cs | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/samples/WebApplicationConsumer/RefitExample/RefitRunner.cs b/samples/WebApplicationConsumer/RefitExample/RefitRunner.cs index 20ef878d70..1a53c9378b 100644 --- a/samples/WebApplicationConsumer/RefitExample/RefitRunner.cs +++ b/samples/WebApplicationConsumer/RefitExample/RefitRunner.cs @@ -19,6 +19,11 @@ public static async Task Run() await GetWeatherForecast(City.From("Peckham")); Console.WriteLine("============="); + Console.WriteLine("======Weather forecast using URL parameters... ======="); + + await GetWeatherForecastUsingUrlParameters(City.From("London")); + Console.WriteLine("============="); + Console.WriteLine("======Historical weather forecast... ======="); await GetHistoricalWeatherForecast(HistoricForecastId.FromNewGuid()); @@ -42,6 +47,22 @@ async Task GetWeatherForecast(City city) } } + async Task GetWeatherForecastUsingUrlParameters(City city) + { + try + { + var forecasts = await api.GetWeatherForecastByCityUsingUrlParameters(city); + foreach (var f in forecasts) + { + Console.WriteLine($"City: {f.City}, TempC: {f.TemperatureC} ({f.TemperatureF.Value}F) - {f.Summary}"); + } + } + catch (Exception ex) + { + Console.WriteLine($"Error: {ex.Message}"); + } + } + async Task GetHistoricalWeatherForecast(HistoricForecastId historicForecastId) { try @@ -66,6 +87,9 @@ public interface IJsonPlaceholderApi [Get("/weatherforecast/{city}")] Task> GetWeatherForecastByCity(City city); + [Get("/weatherforecast")] + Task> GetWeatherForecastByCityUsingUrlParameters(City city); + [Get("/historicweatherforecast/{historicForecastId}")] Task GetHistoricForecastId(HistoricForecastId historicForecastId); }