internal PagerBuilder(HtmlHelper html, AjaxHelper ajax, string actionName, string controllerName, int totalPageCount, int pageIndex, PagerOptions pagerOptions, string routeName, RouteValueDictionary routeValues, AjaxOptions ajaxOptions, IDictionary <string, object> htmlAttributes) { _msAjaxPaging = (ajax != null); if (String.IsNullOrEmpty(actionName)) { if (ajax != null) { actionName = (string)ajax.ViewContext.RouteData.Values["action"]; } else { actionName = (string)html.ViewContext.RouteData.Values["action"]; } } if (String.IsNullOrEmpty(controllerName)) { if (ajax != null) { controllerName = (string)ajax.ViewContext.RouteData.Values["controller"]; } else { controllerName = (string)html.ViewContext.RouteData.Values["controller"]; } } #region 多语言分页支持-vebin.h-2011.11.15 if (ajax != null) { if (ajax.ViewContext.RouteData.Values["sitelang"] != null) { _siteLang = (string)ajax.ViewContext.RouteData.Values["sitelang"]; } } else { if (html.ViewContext.RouteData.Values["sitelang"] != null) { _siteLang = (string)html.ViewContext.RouteData.Values["sitelang"]; } } #endregion if (pagerOptions == null) { pagerOptions = new PagerOptions(); } _html = html; _ajax = ajax; _actionName = actionName; _controllerName = controllerName; if (ajax != null) { _pageName = (string)ajax.ViewContext.RouteData.Values["sitepage"]; } else { _pageName = (string)html.ViewContext.RouteData.Values["sitepage"]; } _totalPageCount = totalPageCount; _pageIndex = pageIndex; _pagerOptions = pagerOptions; _routeName = routeName; _routeValues = routeValues; _ajaxOptions = ajaxOptions; _htmlAttributes = htmlAttributes; // start page index _startPageIndex = pageIndex - (pagerOptions.NumericPagerItemCount / 2); if (_startPageIndex + pagerOptions.NumericPagerItemCount > _totalPageCount) { _startPageIndex = _totalPageCount + 1 - pagerOptions.NumericPagerItemCount; } if (_startPageIndex < 1) { _startPageIndex = 1; } // end page index _endPageIndex = _startPageIndex + _pagerOptions.NumericPagerItemCount - 1; if (_endPageIndex > _totalPageCount) { _endPageIndex = _totalPageCount; } }
//jQuery Ajax pager builder internal PagerBuilder(HtmlHelper helper, string actionName, string controllerName, int totalPageCount, int pageIndex, PagerOptions pagerOptions, string routeName, RouteValueDictionary routeValues, AjaxOptions ajaxOptions, IDictionary <string, object> htmlAttributes) : this(helper, null, actionName, controllerName, totalPageCount, pageIndex, pagerOptions, routeName, routeValues, ajaxOptions, htmlAttributes) { }