ObjectQuery<T>.OrderBy(String, ObjectParameter[]) Method

Определение

Сортирует результаты запроса по заданному критерию. Orders the query results by the specified criteria.

public System.Data.Objects.ObjectQuery<T> OrderBy (string keys, params System.Data.Objects.ObjectParameter[] parameters);
Параметры
keys
String

Ключевые столбцы, по которым упорядочиваются результаты. The key columns by which to order the results.

parameters
ObjectParameter[]

Параметры (ноль или более), используемые в этом методе. Zero or more parameters that are used in this method.

Возвраты

Новый экземпляр запроса ObjectQuery<T>, эквивалентный первоначальному экземпляру с примененным к нему предложением ORDER BY. A new ObjectQuery<T> instance that is equivalent to the original instance with ORDER BY applied.

Исключения

Значение параметра keys или параметра parametersnull. The keys or parameters parameter is null.

key является пустой строкой. The key is an empty string.

Примеры

Этот пример основан на модели AdventureWorks Sales.This example is based on the AdventureWorks Sales Model. В примере создается новый ObjectQuery<T> , содержащий результаты существующего запроса, сгруппированные по ProductID.The example creates a new ObjectQuery<T> object that contains the results of the existing query order by ProductID.

using (AdventureWorksEntities context =
    new AdventureWorksEntities())
{
    string queryString = @"SELECT VALUE product 
        FROM AdventureWorksEntities.Products AS product";

    ObjectQuery<Product> productQuery1 =
        new ObjectQuery<Product>(queryString,
            context, MergeOption.NoTracking);

    ObjectQuery<Product> productQuery2 =
        productQuery1.OrderBy("it.ProductID");

    // Iterate through the collection of Product items.
    foreach (Product result in productQuery2)
    {
        Console.WriteLine("{0}", result.ProductID);
    }
}
Using context As New AdventureWorksEntities()
    Dim queryString As String = "SELECT VALUE product FROM AdventureWorksEntities.Products AS product"

    Dim productQuery1 As New ObjectQuery(Of Product)(queryString, context, MergeOption.NoTracking)

    Dim productQuery2 As ObjectQuery(Of Product) = productQuery1.OrderBy("it.ProductID")

    ' Iterate through the collection of Product items. 
    For Each result As Product In productQuery2
        Console.WriteLine("{0}", result.ProductID)
    Next
End Using

Комментарии

Порядок результатов во вложенном запросе гарантировать нельзя.The ordering of results in a nested query cannot be guaranteed.

Метод OrderBy всегда должен идти последним среди методов построителя запроса.OrderBy should always be the final query builder method in the sequence.

Применяется к