Exemplo n.º 1
0
        /// <summary>
        /// Build digital podcast search url.
        /// </summary>
        /// <param name="query">Search query.</param>
        /// <param name="results">Results count.</param>
        /// <param name="start">Skip count.</param>
        /// <returns></returns>
        public static string ToUrl(this DigitalPodcastsSearchQuery query, uint results, uint start)
        {
            var sb = new StringBuilder();

            sb.Append(BaseUri);
            sb.Append("appid=" + WebUtility.UrlEncode(DigitalPodcastCatalog.AppId));
            sb.Append("&keywords=" + WebUtility.UrlEncode(query?.Term ?? ""));
            if (results > 50)
            {
                results = 50;
            }
            if (results < 1)
            {
                results = 1;
            }
            sb.Append("&start=" + start);
            sb.Append("&results=" + results);
            if (query != null)
            {
                sb.Append("&sort=" + query.Sort);
                sb.Append("&searchsource=" + query.Source);
                sb.Append("&contentfilter=" + query.Filter);
            }
            sb.Append("&format=rssopml");
            return(sb.ToString());
        }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="arg">Argument.</param>
 public OpmlSearchResult(DigitalPodcastsSearchQuery arg)
 {
     this._arg = arg;
 }