public static DataServiceQuery <ImageResult> Image(this BingSearchContainer container, string searchText, string market, Rating rating, ResultSize resultSize, int offset)
        {
            var ratingKey = Enum.GetName(typeof(Rating), rating);
            var pageSize  = GetIntFromResultSize(resultSize);

            var query = container.Image(searchText, market, ratingKey, null, null, null)
                        .AddQueryOption("$top", pageSize)
                        .AddQueryOption("$skip", offset);

            return(query);
        }
        public async Task<List<ImageResult>> Search(string search, Rating rating = Rating.Strict, ResultSize resultSize = ResultSize.Twenty, int offset = 0)
        {
            var images = new List<ImageResult>();

            var context = new BingSearchContainer(new Uri("https://api.datamarket.azure.com/Data.ashx/Bing/Search"));
            context.Credentials = new NetworkCredential(_api, _api);
            var result = await context.Image(search, "en-US", rating, resultSize, offset).ExecuteAsync();
            
            images.AddRange(result.ToList());

            return images;
        }
        public async Task <List <ImageResult> > Search(string search, Rating rating = Rating.Strict, ResultSize resultSize = ResultSize.Twenty, int offset = 0)
        {
            var images = new List <ImageResult>();

            var context = new BingSearchContainer(new Uri("https://api.datamarket.azure.com/Data.ashx/Bing/Search"));

            context.Credentials = new NetworkCredential(_api, _api);
            var result = await context.Image(search, "en-US", rating, resultSize, offset).ExecuteAsync();

            images.AddRange(result.ToList());

            return(images);
        }