/// <summary> /// Configures how a query's results should be ordered. /// </summary> public TBuilder Sort(Action <BasicSortBuilder <TRequest, TEntity> > configure) { var builder = new BasicSortBuilder <TRequest, TEntity>(); configure(builder); return(SetSorter(builder.Build())); }
public static TBuilder SortByDescending <TBuilder, TRequest, TEntity>( this RequestEntityConfigBuilderCommon <TRequest, TEntity, TBuilder> config, string sortColumn) where TEntity : class where TBuilder : RequestEntityConfigBuilderCommon <TRequest, TEntity, TBuilder> { var builder = new BasicSortBuilder <TRequest, TEntity>(); builder.SortBy(sortColumn).Descending(); var sorterFactory = builder.Build(); return(config.SetSorter(sorterFactory)); }
public static TBuilder SortBy <TBuilder, TRequest, TEntity, TProperty>( this RequestEntityConfigBuilderCommon <TRequest, TEntity, TBuilder> config, Expression <Func <TEntity, TProperty> > sortColumn) where TEntity : class where TBuilder : RequestEntityConfigBuilderCommon <TRequest, TEntity, TBuilder> { var builder = new BasicSortBuilder <TRequest, TEntity>(); builder.SortBy(sortColumn); var sorterFactory = builder.Build(); return(config.SetSorter(sorterFactory)); }
public static TBuilder SortBy <TBuilder, TRequest, TEntity, TProperty>( this RequestEntityConfigBuilderCommon <TRequest, TEntity, TBuilder> config, Action <BasicSortBuilder <TRequest, TEntity> > sort) where TEntity : class where TBuilder : RequestEntityConfigBuilderCommon <TRequest, TEntity, TBuilder> { var builder = new BasicSortBuilder <TRequest, TEntity>(); sort(builder); var sorterFactory = builder.Build(); return(config.SetSorter(sorterFactory)); }
public static TBuilder SortByDescending <TBuilder, TRequest, TEntity, TProperty>( this RequestEntityConfigBuilderCommon <TRequest, TEntity, TBuilder> config, Expression <Func <TEntity, TProperty> > sortColumn, Action <BasicSortClauseBuilder <TRequest, TEntity> > andThen) where TEntity : class where TBuilder : RequestEntityConfigBuilderCommon <TRequest, TEntity, TBuilder> { var builder = new BasicSortBuilder <TRequest, TEntity>(); andThen(builder.SortBy(sortColumn).Descending()); var sorterFactory = builder.Build(); return(config.SetSorter(sorterFactory)); }