Exemple #1
0
        public PagingRange Evaluate(int pageIndex, int pageCount, int pageSize)
        {
            PagingRange range = new PagingRange();

            if (pageCount <= _rangeLength)
            {
                range.StartIndex  = 1;
                range.FinishIndex = pageCount;

                return(range);
            }

            int semiLength = (int)Math.Floor(_rangeLength / 2.0);

            range.StartIndex  = pageIndex - semiLength;
            range.FinishIndex = pageIndex + semiLength;

            if (range.StartIndex < 1)
            {
                range.FinishIndex -= range.StartIndex - 1;
                range.StartIndex   = 1;

                return(range);
            }

            if (range.FinishIndex > pageCount)
            {
                range.StartIndex -= range.FinishIndex - pageCount;
                range.FinishIndex = pageCount;
            }

            return(range);
        }
		public PagingRange Evaluate(int pageIndex, int pageCount, int pageSize)
		{
			PagingRange range = new PagingRange();

			if(pageCount <= _rangeLength)
			{
				range.StartIndex = 1;
				range.FinishIndex = pageCount;

				return range;
			}

			int semiLength = (int)Math.Floor(_rangeLength / 2.0);

			range.StartIndex = pageIndex - semiLength;
			range.FinishIndex = pageIndex + semiLength;

			if(range.StartIndex < 1)
			{
				range.FinishIndex -= range.StartIndex - 1;
				range.StartIndex = 1;

				return range;
			}

			if(range.FinishIndex > pageCount)
			{
				range.StartIndex -= range.FinishIndex - pageCount;
				range.FinishIndex = pageCount;
			}

			return range;
		}