private static bool IsSort(QueryableMethodKind method) { return(method == QueryableMethodKind.OrderBy || method == QueryableMethodKind.OrderByDescending || method == QueryableMethodKind.ThenBy || method == QueryableMethodKind.ThenByDescending); }
private static Direction GetDirection(QueryableMethodKind method) { switch (method) { case QueryableMethodKind.OrderBy: case QueryableMethodKind.ThenBy: return(Direction.Positive); case QueryableMethodKind.OrderByDescending: case QueryableMethodKind.ThenByDescending: return(Direction.Negative); default: throw new ArgumentOutOfRangeException("method"); } }
/// <summary> /// Visits method of <see cref="IQueryable"/> or <see cref="IEnumerable{T}"/>. /// </summary> /// <param name="mc">The method call expression.</param> /// <param name="methodKind">Kind of the method.</param> protected abstract Expression VisitQueryableMethod(MethodCallExpression mc, QueryableMethodKind methodKind);