ObjectQuery<T>.Top(String, ObjectParameter[]) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Limita los resultados de la consulta a un número especificado de elementos.
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 de los resultados como una cadena.
- parameters
- ObjectParameter[]
Un conjunto opcional de parámetros de consulta que deben estar en el ámbito al analizar.
Devoluciones
Nueva ObjectQuery<T> instancia que es equivalente a la instancia original con TOP aplicada.
Excepciones
count es null.
count es una cadena vacía.
Ejemplos
En este ejemplo se crea un nuevo 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 resultados 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 no es determinista a menos que se ordene la consulta.
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 .