public ActionResult Thread(string key, int? page) { var currentThread = string.IsNullOrEmpty(key) ? _threadDriver.RootThread : _threadDriver.GetThreadByKey(key); if (currentThread == null) { return HttpNotFound(); } var tagCategoryMaps = _threadDriver.GetTagCategories(currentThread.Id); List<TagListClient> tagLists = new List<TagListClient>(); foreach (var map in tagCategoryMaps) { var tagList = _tagDriver.GetTagsByCategory(map.TagCategory.Name, map.OnlyShowHotTag, map.IncludeAll, map.IncludeOther); tagLists.Add(tagList); } ViewBag.TagLists = tagLists; PageTopicFilterClient topicFilter = new PageTopicFilterClient(); topicFilter.PageNumber = GetPageNumber(page);; topicFilter.ThreadKey = currentThread.Key; topicFilter.Sort = " CreateTime DESC"; PageListClient<TopicClient> pageList = _topicDriver.PagingClientTopics(DefaultSetting.TopicsPerPage, topicFilter); PageTopicClient pageTopic = new PageTopicClient() { Page = pageList, Filter = topicFilter }; ViewBag.CurrentThread = currentThread; pageTopic.Page.GenerateUniqueId(); return View("Thread", pageTopic); }
public ActionResult Thread(string key, int?page) { var currentThread = string.IsNullOrEmpty(key) ? _threadDriver.RootThread : _threadDriver.GetThreadByKey(key); if (currentThread == null) { return(HttpNotFound()); } var tagCategoryMaps = _threadDriver.GetTagCategories(currentThread.Id); List <TagListClient> tagLists = new List <TagListClient>(); foreach (var map in tagCategoryMaps) { var tagList = _tagDriver.GetTagsByCategory(map.TagCategory.Name, map.OnlyShowHotTag, map.IncludeAll, map.IncludeOther); tagLists.Add(tagList); } ViewBag.TagLists = tagLists; PageTopicFilterClient topicFilter = new PageTopicFilterClient(); topicFilter.PageNumber = GetPageNumber(page);; topicFilter.ThreadKey = currentThread.Key; topicFilter.Sort = " CreateTime DESC"; PageListClient <TopicClient> pageList = _topicDriver.PagingClientTopics(DefaultSetting.TopicsPerPage, topicFilter); PageTopicClient pageTopic = new PageTopicClient() { Page = pageList, Filter = topicFilter }; ViewBag.CurrentThread = currentThread; pageTopic.Page.GenerateUniqueId(); return(View("Thread", pageTopic)); }