ObjectQuery<T>.Top(String, ObjectParameter[]) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Omezí výsledky dotazu na zadaný počet položek.
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)
Parametry
- count
- String
Počet položek ve výsledcích jako řetězec.
- parameters
- ObjectParameter[]
Volitelná sada parametrů dotazu, které by při analýze měly být v oboru.
Návraty
Nová ObjectQuery<T> instance, která je ekvivalentní původní instanci s použitím TOP .
Výjimky
count
je null
.
count
je prázdný řetězec.
Příklady
Tento příklad vytvoří nový ObjectQuery<T> , který obsahuje první dva výsledky existujícího dotazu.
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);
}
Tento příklad získá pět Product
objektů po přeskočení prvních tří ve výsledku dotazu seřazených podle Product.ListPrice
.
Top se používá místo limitu pro stránková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);
}
Poznámky
Top je nedeterministický, pokud není dotaz seřazený.
Když použijete metodu Top za metodou Skip , funguje jako příkaz LIMIT klauzule ORDER BY .