public async Task <StateProvincesQueryResponse> Handle(StateProvincesQuery req) { var stateProvinces = mapper.Map <IEnumerable <Shared.Contracts.Metadata.StateProvince> >(await metadataRepository.GetStateProvinces()); if (!string.IsNullOrEmpty(req.CountryCode)) { stateProvinces = stateProvinces.Where(sp => sp.CountryCode == req.CountryCode); } return(new StateProvincesQueryResponse { Items = stateProvinces }); }
public async Task <StateProvincesQueryResponse> Handle(StateProvincesQuery req) { var stateProvinces = await cache.GetOrAdd("metadata:state_provinces", () => metadataRepository.GetStateProvinces(), DateTimeOffset.Now.Add(cacheEntryLifetime)); if (!string.IsNullOrEmpty(req.CountryCode)) { stateProvinces = stateProvinces.Where(sp => sp.CountryCode == req.CountryCode); } return(new StateProvincesQueryResponse { Items = mapper.Map <IEnumerable <StateProvince> >(stateProvinces) }); }