Queryable.Reverse<TSource>(IQueryable<TSource>) Method
Definition
Inverts the order of the elements in a sequence.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Linq::IQueryable<TSource> ^ Reverse(System::Linq::IQueryable<TSource> ^ source);
public static System.Linq.IQueryable<TSource> Reverse<TSource> (this System.Linq.IQueryable<TSource> source);
static member Reverse : System.Linq.IQueryable<'Source> -> System.Linq.IQueryable<'Source>
<Extension()>
Public Function Reverse(Of TSource) (source As IQueryable(Of TSource)) As IQueryable(Of TSource)
Type Parameters
- TSource
The type of the elements of source
.
Parameters
- source
- IQueryable<TSource>
A sequence of values to reverse.
Returns
- IQueryable<TSource>
An IQueryable<T> whose elements correspond to those of the input sequence in reverse order.
Exceptions
source
is null
.
Examples
The following code example demonstrates how to use Reverse<TSource>(IQueryable<TSource>) to reverse the order of elements in an array.
char[] apple = { 'a', 'p', 'p', 'l', 'e' };
// Reverse the order of the characters in the collection.
IQueryable<char> reversed = apple.AsQueryable().Reverse();
foreach (char chr in reversed)
Console.Write(chr + " ");
Console.WriteLine();
/*
This code produces the following output:
e l p p a
*/
Dim appleLetters As New List(Of Char)(New Char() _
{"a"c, "p"c, "p"c, "l"c, "e"c})
' Reverse the order of the characters in the collection.
Dim reversed As IQueryable(Of Char) = _
appleLetters.AsQueryable().Reverse()
Dim output As New System.Text.StringBuilder
For Each chr As Char In reversed
output.Append(chr & " ")
Next
' Display the output.
MsgBox(output.ToString())
' This code produces the following output:
'
' e l p p a
Remarks
The Reverse<TSource>(IQueryable<TSource>) method generates a MethodCallExpression that represents calling Reverse<TSource>(IQueryable<TSource>) itself as a constructed generic method. It then passes the MethodCallExpression to the CreateQuery<TElement>(Expression) method of the IQueryProvider represented by the Provider property of the source
parameter.
The query behavior that occurs as a result of executing an expression tree that represents calling Reverse<TSource>(IQueryable<TSource>) depends on the implementation of the type of the source
parameter. The expected behavior is that it reverses the order of the elements in source
.