public async Task <WEATHER_FORECAST> GetWeather(int idx = 1) { WEATHER_FORECAST result = null; using var executor = new ServiceExecutorManager <IGetWeatherForecastSvc>(_getWeatherForecastSvc); await executor.SetRequest(o => o.Request = new WeatherForecastRequestDto { ID = idx }) .OnExecutedAsync(async o => { result = o.Result; return(true); }); return(result); }
public override bool PreExecute() { using var executor = new ServiceExecutorManager <IGetWeatherForecastSvc>(_getWeatherForecastSvc); executor.SetRequest(o => o.Request = new WeatherForecastRequestDto { ID = Request.ID }) .OnExecuted(o => { _removeObj = o.Result; return(true); }); if (_removeObj.xIsNotNull()) { return(true); } return(false); }
public override Task <WeatherForecastResponse> GetWeatherForecast(WeatherForecastRequest request, ServerCallContext context) { WEATHER_FORECAST result = null; using var executor = new ServiceExecutorManager <IGetWeatherForecastSvc>(new GetWeatherForecastSvc()); executor.SetRequest(o => o.Request = new WeatherForecastRequestDto { ID = request.Id }) .OnExecuted(o => { result = o.Result; return(true); }); return(Task.FromResult(new WeatherForecastResponse { Id = result.ID, Date = result.DATE.ToString(), TemperatureC = result.TEMPERATURE_C.Value, TemperatureF = result.TEMPERATURE_F.Value, Summary = result.SUMMARY })); }