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 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 .