private async Task <DateConvertResult> ConvertDate(CityQuery city, DateTime inDateTime) { DateConvertResult result = new DateConvertResult(); result.dateConvertOut = inDateTime; result.errorType = 0; if (city == null) { return(result); } if (city.cityName != null) { var cityRes = await _timeZoneCorrector.GetCity(city.countryName, city.stateName, city.districtName, city.cityName); if (cityRes == null) { result.errorType = -1; return(result); } if (_timeZoneCorrector.ConvertToUtcFromCustomTimeZone(cityRes.TimeZone, (DateTime)inDateTime, out result.dateConvertOut)) { result.errorType = 0; return(result); } else { result.errorType = -2; return(result); } } result.errorType = -1; return(result); }
public async Task <ActionResult> GetCity([FromQuery] CityQuery query) { if (query.countryName == null) { ModelState.AddModelError("countryName", "Отсутствует значение параметра"); } if (query.cityName == null) { ModelState.AddModelError("cityName", "Отсутствует значение параметра"); } if (!ModelState.IsValid) { return(BadRequest(new ResponseError { error = true, message = GetModelStateError() })); } var city = await _timeZoneCorrector.GetCity(query.countryName, query.stateName, query.districtName, query.cityName); if (city == null) { return(BadRequest(new ResponseError { error = true, message = "City not found" })); } return(Ok(new ResponseResult <City>() { error = false, result = city })); }