public async Task <JsonResult> GetRegions([FromBody] GetRegionsRequest request) { var regionsList = new List <RegionResource>(); try { var result = await _countryService.FindByIdInclusive(request.CountryId, x => x.Include(p => p.Regions)); if (!result.Success) { Alert($"Error! {result.Message}", NotificationType.info, Int32.Parse(_appConfig.Value.NotificationDisplayTime)); return(Json(regionsList)); } var res = result.Data.Regions; foreach (var item in res) { regionsList.Add(new RegionResource { Id = item.Id, Name = item.Name }); } return(Json(regionsList)); } catch (Exception ex) { Alert($"Error! {ex.Message}", NotificationType.error, Int32.Parse(_appConfig.Value.NotificationDisplayTime)); return(Json(regionsList)); } }
/// <summary> /// Retrieve a list of regions for a specified country using its ISO code /// </summary> /// <param name="param"></param> /// <returns>A list of Region</returns> public async Task <IEnumerable <Region> > RetrieveRegions(RetrieveCountryParam param) { if (string.IsNullOrWhiteSpace(param.IsoCode)) { throw new ArgumentException(GetMessageOfNullWhiteSpace(nameof(param.IsoCode)), nameof(param)); } if (param.CultureInfo == null) { throw new ArgumentException(GetMessageOfNull(nameof(param.CultureInfo)), nameof(param)); } var regionsCacheKey = new CacheKey(CacheConfigurationCategoryNames.Regions) { CultureInfo = param.CultureInfo }; regionsCacheKey.AppendKeyParts(param.IsoCode); var result = await _cacheProvider.GetOrAddAsync(regionsCacheKey, () => { var request = new GetRegionsRequest { CountryIsoCode = param.IsoCode, CultureName = param.CultureInfo.Name, IncludeUnsupported = false }; return(_overtureClient.SendAsync(request)); }).ConfigureAwait(false); return(result); }
/// <summary> /// Gets the list of region entities. /// </summary> /// <param name="request">The request.</param> /// <returns> /// The list of region entities /// </returns> /// <exception cref="CmsApiException"></exception> public DataListResponse<Region> GetRegions(GetRegionsRequest request = null) { try { return Repository.ToDataListResponse(request); } catch (Exception inner) { const string message = "Failed to get regions list."; Logger.Error(message, inner); throw new CmsApiException(message, inner); } }
/// <summary> /// Gets the list of region entities. /// </summary> /// <param name="request">The request.</param> /// <returns> /// The list of region entities /// </returns> /// <exception cref="CmsApiException"></exception> public DataListResponse <Region> GetRegions(GetRegionsRequest request = null) { try { return(Repository.ToDataListResponse(request)); } catch (Exception inner) { const string message = "Failed to get regions list."; Logger.Error(message, inner); throw new CmsApiException(message, inner); } }
/// <summary> /// GetRegions接口的同步版本,获取控制台展示region列表 /// </summary> /// <param name="req">参考<see cref="GetRegionsRequest"/></param> /// <returns>参考<see cref="GetRegionsResponse"/>实例</returns> public GetRegionsResponse GetRegionsSync(GetRegionsRequest req) { JsonResponseModel <GetRegionsResponse> rsp = null; try { var strResp = this.InternalRequestSync(req, "GetRegions"); rsp = JsonConvert.DeserializeObject <JsonResponseModel <GetRegionsResponse> >(strResp); } catch (JsonSerializationException e) { throw new TencentCloudSDKException(e.Message); } return(rsp.Response); }
public async Task <IActionResult> GetRegions(string countryCode) { try { var request = new GetRegionsRequest() { CountryCode = countryCode }; return(Ok(new Success(await Mediator.Send(request)))); } catch (Exception exception) { return(StatusCode((int)HttpStatusCode.InternalServerError, new InternalServerError(exception))); } }
/// <summary> /// Handle /// </summary> /// <param name="request"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public override async Task <List <GetRegionsResponse> > Handle(GetRegionsRequest request, CancellationToken cancellationToken) { var regions = await repository.GetAll() .Include(r => r.Pais) .Select(r => new { r.Id, r.Nombre, Pais = new { r.Pais.Id, r.Pais.Nombre } }) .Distinct() .ToListAsync().ConfigureAwait(false); var result = regions.Select(c => new GetRegionsResponse() { Id = c.Id, Name = c.Nombre, IdCountry = c.Pais.Id, Country = c.Pais.Nombre }).ToList(); SendTimeOperationToLogger("GetRegions"); return(result); }
public GetRegionsResponse GetRegions(GetRegionsRequest request) { throw new NotImplementedException(); }
/// <summary> /// 可选地域 /// </summary> /// <param name="request">请求参数信息</param> /// <returns>请求结果信息</returns> public async Task <GetRegionsResponse> GetRegions(GetRegionsRequest request) { return(await new GetRegionsExecutor().Client(this).Execute <GetRegionsResponse, GetRegionsResult, GetRegionsRequest>(request).ConfigureAwait(false)); }
/// <summary> /// 可选地域 /// </summary> /// <param name="request">请求参数信息</param> /// <returns>请求结果信息</returns> public GetRegionsResponse GetRegions(GetRegionsRequest request) { return(new GetRegionsExecutor().Client(this).Execute <GetRegionsResponse, GetRegionsResult, GetRegionsRequest>(request)); }