Example #1
0
 /// <summary>
 /// 搜索热词
 /// </summary>
 public string HotSearchWord(SimpleSearchFilter filter)
 {
     try
     {
         var pindex = VideoNodeKeyArray.Instance.Items[new VideoNodeKey(filter.platform, 0, filter.auth)];
         var words  = LuceneDictionary.Instance.Dictionary[pindex].Items;
         IEnumerable <XElement> page = null;
         if (filter.lang == CustomArray.LanguageArray[1])
         {
             page = words.Skip(filter.c * (filter.s - 1)).Take(filter.c).Select <InstrumentNode, XElement>
                        (v =>
             {
                 return(new XElement("keyword", LanguageUtils.FormatTraditionChinese(v.Key)));
             });
         }
         else
         {
             page = words.Skip(filter.c * (filter.s - 1)).Take(filter.c).Select <InstrumentNode, XElement>
                        (v =>
             {
                 return(new XElement("keyword", v.Key));
             });
         }
         var xml = new XElement("keywords",
                                new XElement("count", words.Count),
                                new XElement("page_count", PageUtils.PageCount(words.Count, filter.c)),
                                page
                                );
         return(xml.ToString(SaveOptions.DisableFormatting));
     }
     catch (KeyNotFoundException)
     {
         return(BoxUtils.FormatErrorMsg("不存在该平台下的热词信息"));
     }
     catch (Exception ex)
     {
         return(BoxUtils.FormatErrorMsg(ex));
     }
 }