/// <summary>
        /// Function to parse image responses. Will display image title, image host and image URL in the UI
        /// </summary>
        /// <param name="imageResponse"></param>
        private void ParseImageResponse(ImageSearchResponse imageResponse)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("Image search results:\n\n");
            sb.AppendFormat("# of results: {0}\n\n", imageResponse.totalEstimatedMatches);

            foreach (Value image in imageResponse.value)
            {
                sb.AppendFormat("\tImage name: {0}\n\tImage size: {1}\n\tImage host: {2}\n\tImage URL: {3}\t\n\n", image.name, image.contentSize, image.hostPageDisplayUrl, image.contentUrl);
            }

            SearchResult = sb.ToString();
        }
        /// <summary>
        /// Function to search for images. Uses an endpoint for image search
        /// </summary>
        /// <param name="query">The query to search for</param>
        /// <returns>The <see cref="ImageSearchResponse"/>, containing image details</returns>
        public async Task <ImageSearchResponse> SearchImages(string query)
        {
            string endpoint = string.Format("{0}{1}", "https://api.cognitive.microsoft.com/bing/v5.0/images/search?q=", query);

            try
            {
                ImageSearchResponse response = await _webRequest.MakeRequest <ImageSearchResponse>(endpoint);

                return(response);
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
            }

            return(null);
        }