/// <summary> /// Sorts the results of the entity set. TODO: Examine for changing to private. /// </summary> /// <param name="order"> /// The set of order expressions that define the sort. /// </param> /// <exception cref="ArgumentNullException"> /// <paramref name="order"/> is null. /// </exception> protected void SortResults([NotNull] OrderExpressionSet <T> order) { if (order == null) { throw new ArgumentNullException(nameof(order)); } this.orderByExpressions.Clear(); this.orderByExpressions.AddRange(order.Expressions); }
/// <summary> /// Sorts the results of the entity selection. /// </summary> /// <param name="sortOrder"> /// The sort order to apply. /// </param> /// <returns> /// The current <see cref="EntitySet{T}"/>. /// </returns> /// <exception cref="ArgumentNullException"> /// <paramref name="sortOrder"/> is null. /// </exception> public EntitySet <T> Sort([NotNull] Action <OrderExpressionSet <T> > sortOrder) { if (sortOrder == null) { throw new ArgumentNullException(nameof(sortOrder)); } var expressionSet = new OrderExpressionSet <T>(); sortOrder.Invoke(expressionSet); this.SortResults(expressionSet); return(this); }