public override async Task <RouteMilepostResult> Execute() { var requestContract = new MeasureToGeometry.RequestContract { Locations = new[] { new MeasureToGeometry.RequestLocation { Measure = Milepost.ToString(), RouteId = Route } }, OutSr = Options.WkId }; var requestUri = $"{BaseUrl}measureToGeometry{requestContract.QueryString}"; HttpResponseMessage httpResponse; try { httpResponse = await App.HttpClient.GetAsync(requestUri); } catch (Exception ex) { ErrorMessage = ex.Message; return(null); } MeasureToGeometry.ResponseContract response; try { response = await httpResponse.Content.ReadAsAsync <MeasureToGeometry.ResponseContract>(new MediaTypeFormatter[] { new TextPlainResponseFormatter() }); } catch (Exception ex) { ErrorMessage = ex.Message; return(null); } if (!response.IsSuccessful) { return(null); } var result = ProcessResult(response); if (result is null) { return(null); } result.InputRouteMilePost = $"Route {Route} Milepost {Milepost}"; return(result); }