public static int PageList(this IEnumerable <int> source, ExFilterBase filter, VideoPars pars, XElement root, bool isEx) { var index = (filter.s - 1) * filter.c; var max = index + filter.c; int num = 0; using (var enumerator = source.GetEnumerator()) { while (enumerator.MoveNext()) { if (index <= num && num < max) { root.Add(pars.ResponseFun(ListCache.Instance.Dictionary[enumerator.Current], filter, isEx)); } num++; } } return(num); }
public static int PageList <T>(this IEnumerable <T> source, ExFilterBase filter, VideoPars pars, XElement root, bool isEx) where T : VideoNode { var index = (filter.s - 1) * filter.c; var max = index + filter.c; int num = 0; using (IEnumerator <T> enumerator = source.GetEnumerator()) { while (enumerator.MoveNext()) { if (index <= num && num < max) { root.Add(pars.ResponseFun(enumerator.Current, filter, isEx)); } num++; } } return(num); }