ObjectQuery(Of T).Top Method (String, ObjectParameter())
.NET Framework (current version)
Limits the query results to a specified number of items.
Assembly: System.Data.Entity (in System.Data.Entity.dll)
Public Function Top ( count As String, ParamArray parameters As ObjectParameter() ) As ObjectQuery(Of T)
Parameters
- count
-
Type:
System.String
The number of items in the results as a string.
- parameters
-
Type:
System.Data.Objects.ObjectParameter()
An optional set of query parameters that should be in scope when parsing.
Return Value
Type: System.Data.Objects.ObjectQuery(Of T)A new ObjectQuery(Of T) instance that is equivalent to the original instance with TOP applied.
| Exception | Condition |
|---|---|
| ArgumentNullException | count is null. |
| ArgumentException | count is an empty string. |
These examples are based on the AdventureWorks Sales Model.
This example creates a new ObjectQuery(Of T) that contains the first two results of the existing query.
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.Top("2") ' Iterate through the collection of Product items. For Each result As Product In productQuery2 Console.WriteLine("{0}", result.Name) Next End Using
This example gets five Product objects after skipping the first three in the query result, sorted by Product.ListPrice. Top is used instead of LIMIT for paging.
Using context As New AdventureWorksEntities() ' Define the parameters used to define the "page" of returned data. Dim skipValue As Integer = 3 Dim limitValue As Integer = 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. Dim query As ObjectQuery(Of Product) = _ context.Products.Skip("it.ListPrice", "@skip", _ New ObjectParameter("skip", skipValue)).Top("@limit", New ObjectParameter("limit", limitValue)) ' Iterate through the page of Product items. For Each result As Product In query Console.WriteLine("ID: {0}; Name: {1}", result.ProductID, result.Name) Next End Using
.NET Framework
Available since 3.5
Available since 3.5
Show: