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

Definition

Orders the query results by the specified criteria.

public:
 System::Data::Objects::ObjectQuery<T> ^ OrderBy(System::String ^ keys, ... cli::array <System::Data::Objects::ObjectParameter ^> ^ parameters);
public System.Data.Objects.ObjectQuery<T> OrderBy (string keys, params System.Data.Objects.ObjectParameter[] parameters);
member this.OrderBy : string * System.Data.Objects.ObjectParameter[] -> System.Data.Objects.ObjectQuery<'T>
Public Function OrderBy (keys As String, ParamArray parameters As ObjectParameter()) As ObjectQuery(Of T)

Parameters

keys
String

The key columns by which to order the results.

parameters
ObjectParameter[]

Zero or more parameters that are used in this method.

Returns

A new ObjectQuery<T> instance that is equivalent to the original instance with ORDER BY applied.

Exceptions

The keys or parameters parameter is null.

The key is an empty string.

Examples

This example is based on the Microsoft SQL Server Product Samples: Database. 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

Remarks

The ordering of results in a nested query cannot be guaranteed.

OrderBy should always be the final query builder method in the sequence.

Applies to

See also