예제 #1
0
        public FreshDetailViewModel(Fresh fresh)
        {
            _freshDetails = new FreshDetail()
            {
                FreshInfo = fresh, FreshContentSlim = "", FreshContentEx = ""
            };

            Update(_freshDetails.FreshInfo);
        }
예제 #2
0
        public FreshDetailViewModel(BestFreshComment best)
        {
            _freshDetails = new FreshDetail()
            {
                FreshInfo = best.FreshNews.FreshInfo, FreshContentSlim = "", FreshContentEx = ""
            };

            Update(_freshDetails.FreshInfo);
        }
예제 #3
0
        /// <summary>
        /// 新鲜事详情
        /// </summary>
        /// <returns></returns>
        public async Task <FreshDetail> GetFreshDetail(Fresh fresh)
        {
            try
            {
                if (ConnectivityManager.Current.Network == NetworkType.NotConnected)  //无网络连接
                {
                    FreshDetail list = await FileHelper.Current.ReadObjectAsync <FreshDetail>($"freshDetail-{fresh.ID}.json");

                    return(list);
                }
                else
                {
                    JsonObject json = await GetJson(string.Format(ServiceURL.URL_FRESH_NEWS_DETAIL, fresh.ID));

                    if (json != null)
                    {
                        var    post        = json["post"];
                        string htmlContent = (post.GetObject())["content"].GetString();

                        if (fresh.Tag == null)
                        {
                            var tag = Tags.parse((post.GetObject())["tags"].ToString());
                            fresh.Tag = tag;
                        }

                        FreshDetail list = new FreshDetail()
                        {
                            FreshInfo = fresh, FreshContentSlim = htmlContent, FreshContentEx = htmlContent
                        };
                        await FileHelper.Current.WriteObjectAsync <FreshDetail>(list, $"freshDetail-{fresh.ID}.json");

                        return(list);
                    }
                    else
                    {
                        return(null);
                    }
                }
            }
            catch
            {
                return(null);
            }
        }