コード例 #1
0
        public static IOrderedSpecificationBuilder <T> ThenBy <T>(
            this IOrderedSpecificationBuilder <T> orderedBuilder,
            Expression <Func <T, object?> > orderExpression)
        {
            ((List <(Expression <Func <T, object?> > OrderExpression, OrderTypeEnum OrderType)>)orderedBuilder.Specification.OrderExpressions)
            .Add((orderExpression, OrderTypeEnum.ThenBy));

            return(orderedBuilder);
        }
コード例 #2
0
        public static IOrderedSpecificationBuilder <T> ThenByDescending <T>(
            this IOrderedSpecificationBuilder <T> orderedBuilder,
            Expression <Func <T, object?> > orderExpression,
            bool condition)
        {
            if (condition && !orderedBuilder.IsChainDiscarded)
            {
                ((List <OrderExpressionInfo <T> >)orderedBuilder.Specification.OrderExpressions).Add(new OrderExpressionInfo <T>(orderExpression, OrderTypeEnum.ThenByDescending));
            }
            else
            {
                orderedBuilder.IsChainDiscarded = true;
            }

            return(orderedBuilder);
        }
コード例 #3
0
 public static IOrderedSpecificationBuilder <T> ThenBy <T>(
     this IOrderedSpecificationBuilder <T> orderedBuilder,
     Expression <Func <T, object?> > orderExpression)
 => ThenBy(orderedBuilder, orderExpression, true);