Queryable.Reverse(IQueryable<TSource>) Queryable.Reverse(IQueryable<TSource>) Queryable.Reverse(IQueryable<TSource>) Queryable.Reverse(IQueryable<TSource>) Method

定義

反轉序列中項目的排序方向。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)

類型參數

TSource

source 項目的類型。The type of the elements of source.

參數

source
IQueryable<TSource>

要反轉方向的值序列。A sequence of values to reverse.

傳回

IQueryable<TSource>

其項目對應於輸入序列中反向排序之項目的 IQueryable<T>An IQueryable<T> whose elements correspond to those of the input sequence in reverse order.

例外狀況

範例

下列程式碼範例示範如何使用Reverse<TSource>(IQueryable<TSource>)來反轉陣列中元素的順序。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 

備註

方法會產生, 其代表以Reverse<TSource>(IQueryable<TSource>)結構化泛型方法的方式呼叫本身。 MethodCallExpression Reverse<TSource>(IQueryable<TSource>)The Reverse<TSource>(IQueryable<TSource>) method generates a MethodCallExpression that represents calling Reverse<TSource>(IQueryable<TSource>) itself as a constructed generic method. 然後, 它會MethodCallExpression將傳遞CreateQuery<TElement>(Expression)至由Provider source參數IQueryProvider的屬性所表示之的方法。It then passes the MethodCallExpression to the CreateQuery<TElement>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

因執行代表呼叫Reverse<TSource>(IQueryable<TSource>)之運算式樹狀架構而產生的查詢行為, 取決於source參數類型的實作為。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. 預期的行為是, 它會反轉中source的元素順序。The expected behavior is that it reverses the order of the elements in source.

適用於