ObjectQuery<T>.Top(String, ObjectParameter[]) Método

Definición

Limita los resultados de la consulta al número de elementos especificado.

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

Parámetros

count
String

Número de elementos en los resultados, como un valor string.

parameters
ObjectParameter[]

Conjunto opcional de parámetros de consulta que deberían estar en el ámbito durante el análisis.

Devoluciones

Nueva instancia de ObjectQuery<T> que es equivalente a la instancia original, pero aplicando TOP.

Excepciones

count es null.

count es una cadena vacía.

Ejemplos

En este ejemplo, se crea un nuevo objeto ObjectQuery<T> que contiene los dos primeros resultados de la consulta existente.

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.Top("2");

    // Iterate through the collection of Product items.
    foreach (Product result in productQuery2)
        Console.WriteLine("{0}", result.Name);
}

En este ejemplo se obtienen cinco Product objetos después de omitir los tres primeros en el resultado de la consulta, ordenados por Product.ListPrice. Top se usa en lugar de LIMIT para la paginación.

using (AdventureWorksEntities context =
    new AdventureWorksEntities())
{
    // Define the parameters used to define the "page" of returned data.
    int skipValue = 3;
    int limitValue = 5;

    // Define a query that returns a "page" or the full
    // Product data using the Skip and Top methods.
    // When Top() follows Skip(), it acts like the LIMIT statement.
    ObjectQuery<Product> query = context.Products
        .Skip("it.ListPrice", "@skip",
                new ObjectParameter("skip", skipValue))
        .Top("@limit", new ObjectParameter("limit", limitValue));

    // Iterate through the page of Product items.
    foreach (Product result in query)
        Console.WriteLine("ID: {0}; Name: {1}",
        result.ProductID, result.Name);
}

Comentarios

Top es no determinista a menos que la consulta esté ordenada.

Cuando se usa el Top método después del Skip método , funciona como la instrucción LIMIT de una cláusula ORDER BY .

Se aplica a

Consulte también