private static void ParsePagingInfo(IValueProvider values, ODataQueryCriteria criteria) { var pn = values.GetValue("$pageNumber"); var tc = values.GetValue("$inlinecount"); if (pn != null || tc != null) { var pageNumber = pn != null ? (int)pn.ConvertTo(typeof(int)) : 1; var needCount = tc != null && !string.IsNullOrWhiteSpace(tc.AttemptedValue); var ps = values.GetValue("$pageSize"); int pageSize = ps != null ? (int)ps.ConvertTo(typeof(int)) : 10; var pagingInfo = new PagingInfo(pageNumber, pageSize, needCount); criteria.PagingInfo = pagingInfo; } }
/// <summary> /// Indicates is this pagingInfo a nonsence. /// </summary> /// <returns></returns> public static bool IsNullOrEmpty(PagingInfo pagingInfo) { return pagingInfo == null || pagingInfo is EmptyPagingInfo; }