示例#1
0
        private async Task GetReply(CommentModel data)
        {
            try
            {
                if (data.replies == null)
                {
                    data.replies = new ObservableCollection <CommentModel>();
                }
                data.showReplyMore = Visibility.Collapsed;
                data.showLoading   = Visibility.Visible;
                ObservableCollection <CommentModel> ls = new ObservableCollection <CommentModel>();
                var re = await commentApi.Reply(_loadCommentInfo.oid, data.rpid.ToString(), data.loadpage, _loadCommentInfo.commentMode).Request();

                if (re.status)
                {
                    dataCommentModel m = JsonConvert.DeserializeObject <dataCommentModel>(re.results);
                    if (m.code == 0)
                    {
                        if (m.data.replies != null && m.data.replies.Count != 0)
                        {
                            if (m.data.replies.Count >= 10)
                            {
                                data.showReplyMore = Visibility.Visible;
                            }
                            foreach (var item in m.data.replies)
                            {
                                data.replies.Add(item);
                            }
                            data.loadpage++;
                        }
                        else
                        {
                            data.showReplyMore = Visibility.Collapsed;
                        }
                    }
                    else
                    {
                        Utils.ShowMessageToast(m.message);
                    }
                }
                else
                {
                    Utils.ShowMessageToast(re.message);
                }
            }
            catch (Exception)
            {
                Utils.ShowMessageToast("加载评论失败");
                //throw;
            }
            finally
            {
                data.showLoading = Visibility.Collapsed;
            }
        }
示例#2
0
        private async Task GetComment()
        {
            if (_page == 1)
            {
                noRepost.Visibility    = Visibility.Collapsed;
                closeRepost.Visibility = Visibility.Collapsed;
                //ls_hot.ItemsSource = null;
                ls_new.ItemsSource = null;
            }
            try
            {
                btn_LoadMore.Visibility = Visibility.Collapsed;
                _loading           = true;
                pr_load.Visibility = Visibility.Visible;
                ObservableCollection <CommentModel> ls = new ObservableCollection <CommentModel>();


                var re = await commentApi.Comment(_loadCommentInfo.oid, _loadCommentInfo.commentSort, _page, _loadCommentInfo.commentMode).Request();

                if (re.status)
                {
                    dataCommentModel m = JsonConvert.DeserializeObject <dataCommentModel>(re.results);
                    if (m.code == 0)
                    {
                        if (m.data.replies != null && m.data.replies.Count != 0)
                        {
                            if (_page == 1)
                            {
                                if (m.data.upper.top != null)
                                {
                                    m.data.upper.top.showTop = Visibility.Visible;
                                    m.data.replies.Insert(0, m.data.upper.top);
                                }
                                //ls_hot.ItemsSource = m.data.hots;
                                ls_new.ItemsSource = m.data.replies;
                            }
                            else
                            {
                                foreach (var item in m.data.replies)
                                {
                                    (ls_new.ItemsSource as ObservableCollection <CommentModel>).Add(item);
                                }
                            }
                            _page++;

                            if (m.data.replies.Count >= 20)
                            {
                                btn_LoadMore.Visibility = Visibility.Visible;
                            }
                        }
                        else
                        {
                            if (_page == 1)
                            {
                                noRepost.Visibility     = Visibility.Visible;
                                btn_LoadMore.Visibility = Visibility.Collapsed;
                            }
                            else
                            {
                                Utils.ShowMessageToast("全部加载完了...");
                            }
                        }
                    }
                    else
                    {
                        if (m.code == 12002)
                        {
                            closeRepost.Visibility  = Visibility.Visible;
                            btn_LoadMore.Visibility = Visibility.Collapsed;
                        }
                        else
                        {
                            Utils.ShowMessageToast(m.message);
                        }
                    }
                }
                else
                {
                    Utils.ShowMessageToast("加载评论失败");
                }
            }
            catch (Exception)
            {
                Utils.ShowMessageToast("加载评论失败");
            }
            finally
            {
                _loading           = false;
                pr_load.Visibility = Visibility.Collapsed;
            }
        }