예제 #1
0
        public virtual List <string> ToArgs()
        {
            var args = new List <string>();

            if (!string.IsNullOrEmpty(Query))
            {
                args.Add($"q={Query}");
            }

            if (Ids?.Length > 0)
            {
                args.Add($"ids={string.Join(",", Ids)}");
            }

            args.Add($"size={(Size <= 0 ? 1 : Size > 1000 ? 1000 : Size)}");

            if (Fields?.Length > 0)
            {
                args.Add($"fields={string.Join(",", Fields)}");
            }

            args.Add($"sort={Sort.ToString().ToLower()}");
            args.Add($"sort_type={SortType.ToString().ToLower()}");

            if (Aggs?.Length > 0)
            {
                args.Add($"aggs={string.Join(",", Aggs.Select(agg => agg.ToString().ToLower()))}");
            }

            if (!string.IsNullOrEmpty(Author))
            {
                args.Add($"author={Author}");
            }

            if (!string.IsNullOrEmpty(Subreddit))
            {
                args.Add($"subreddit={Subreddit}");
            }

            if (!string.IsNullOrEmpty(After))
            {
                args.Add($"after={After}");
            }

            if (!string.IsNullOrEmpty(Before))
            {
                args.Add($"before={Before}");
            }

            if (Frequency != Frequency.None)
            {
                args.Add($"frequency={Frequency.ToString().ToLower()}");
            }

            return(args);
        }
 /// <summary>
 ///
 /// </summary>
 /// <param name="symbols"></param>
 public void FilterResults(IEnumerable <string> symbols)
 {
     Results = Aggs.Where(a => symbols.Contains(a.Symbol)).ToList();
 }