コード例 #1
0
        protected override void SetChapterCodeRange()
        {
            ChapterCodeRange chapterCodeRange = _chapterService.GetChapterCodeRange(NovelId);

            if (!chapterCodeRange.IsNullOrEmpty <ChapterCodeRange>())
            {
                SetChapterCode(chapterCodeRange.MinChapterCode, chapterCodeRange.MaxChapterCode);
            }
        }
コード例 #2
0
ファイル: ChapterPagerManage.cs プロジェクト: wjydc/YueDu_v3
        public ChapterPagerManage(Func <int, ChapterCodeRange> func, bool isCustomRange = false, int chapterCodeRangeTimeout = 0, int chapterRedirectTimeout = 0)
            : base(chapterRedirectTimeout)
        {
            if (NovelId <= 0)
            {
                return;
            }

            string chapterCodeRange = string.Empty;

            if (isCustomRange && !string.IsNullOrEmpty(chapterCodeRange = UrlParameterHelper.GetParams("cc")))
            {
                int      min   = 0;
                int      max   = 0;
                string[] range = chapterCodeRange.Split('_');
                if (!range.IsNullOrEmpty() && range.Length == 2 &&
                    int.TryParse(range[0], out min) && min >= 0 &&
                    int.TryParse(range[1], out max) && max >= 0)
                {
                    Set(min, max);
                }
            }
            else
            {
                _chapterCodeRange = UrlParameterHelper.GetParams("c");
                if (!string.IsNullOrEmpty(_chapterCodeRange) &&
                    ChapterContext.VerifyRangeToken(_chapterCodeRange, out _minChapterCode, out _maxChapterCode, chapterCodeRangeTimeout))
                {
                    Reset();
                }
                else
                {
                    if (func != null)
                    {
                        ChapterCodeRange range = func(NovelId);
                        if (!range.IsNullOrEmpty <ChapterCodeRange>())
                        {
                            Set(range.MinChapterCode, range.MaxChapterCode);
                        }
                    }
                }
            }
        }