static async Task GetSearchAsync(IRedditDataProxy dataProxy, RedditDataModel dataModel, SearchResponseParameters parameters) { var response = await dataProxy.GetSearchAsync(parameters); foreach (var child in response.MainData.Children) { var output = String.Format($"|{child.Data.Ups,-6:N0}|") + " " + child.Data.Title; Console.WriteLine(output); } }
static void Main(string[] args) { ApiHelper.InitializeApiClient(); var dataModel = new RedditDataModel(); IRedditDataProxy dataProxy = new RedditRESTDataTransfer(dataModel); bool keepSearching = true; while (keepSearching) { Console.Write("Enter subreddit you want to search (ie. rocketleague): "); dataModel.SubReddit = "r/" + Console.ReadLine(); Console.Write("\nEnter topic you want to search about: "); var query = Console.ReadLine(); Console.Write("\nEnter number of threads to retrieve: "); var limit = Int32.Parse(Console.ReadLine()); Console.Write("\nSort by one of (new, hot, top, relevance, comments): "); var sort = Console.ReadLine(); var parameters = new SearchResponseParameters { Query = query, Limit = limit, RestrictSr = OnOffOptions.On, Sort = sort }; GetSearchAsync(dataProxy, dataModel, parameters).Wait(); Console.WriteLine("\nThis was your subreddit endpoint: " + parameters); Console.WriteLine("\nWant to search again? (yes / no)"); keepSearching = Console.ReadLine() == "yes" ? true : false; } }
/// <summary> /// Sends a GET request based on the 'search' parameters. /// </summary> /// <param name="parameters">Parameters to customize the search.</param> /// <returns></returns> public async Task <SearchResponse> GetSearchAsync(SearchResponseParameters parameters) { Model.Endpoint = parameters.ToString(); return(await GetResponse <SearchResponse>(Model.URL)); }
public Task<SearchResponse> GetSearchAsync(SearchResponseParameters parameters) { throw new NotImplementedException(); }