示例#1
0
        public async Task <BeerServiceResponse> GetBeers(Filter filter)
        {
            var beers = new BeerServiceResponse();

            if (!filter.FilterBeers)
            {
                using (var r = new StreamReader("beers.json"))
                {
                    var json = r.ReadToEnd();
                    JsonConvert.PopulateObject(json, beers);
                }
            }
            return(beers);
        }
示例#2
0
        public async Task <BeerServiceResponse> GetBeers(Filter filter)
        {
            filter.Page++;
            var fullUri = "";

            if (filter.FilterBeers)
            {
                fullUri = string.Format(pathToFilter, filter.Page, filter.Name, filter.IsOrganic,
                                        filter.HasLabels, filter.Year, filter.Status, filter.Ids, filter.Sort?.ToUpper(), filter.Order);
            }
            else
            {
                fullUri = string.Format(path, filter.Page, filter.Sort, filter.Order);
            }
            using (var client = new HttpClient())
            {
                client.DefaultRequestHeaders.Add("HTTP_ACCEPT", "application/json");
                BeerServiceResponse beers    = null;
                HttpResponseMessage response = await client.GetAsync(fullUri);

                if (response.IsSuccessStatusCode)
                {
                    beers = await response.Content.ReadAsAsync <BeerServiceResponse>
                                (new List <MediaTypeFormatter> {
                        new JsonMediaTypeFormatter()
                    });
                }
                return(beers);
            }
            //var beers = new BeerServiceResponse();
            //using (var r = new StreamReader("beers.json"))
            //{
            //    var json = r.ReadToEnd();
            //    JsonConvert.PopulateObject(json, beers);
            //}
            //return beers;
        }