Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Koleksiyonun başından itibaren belirtilen sayıda bitişik öğe döndürür.
Sözdizimi
Take count
Parçalar
count
Gerekli. Döndürülecek sıranın öğe sayısını değerlendiren bir değer veya ifade.
Açıklamalar
Take yan tümcesi, sorgunun bir sonuç listesinin başlangıcından itibaren belirtilen sayıda bitişik öğe içermesine neden olur. Eklenecek öğe sayısı parametresi tarafından count belirtilir.
Yan tümcesini Take yan tümcesiyle kullanarak sorgunun Skip herhangi bir kesiminden bir veri aralığı döndürebilirsiniz. Bunu yapmak için aralığın ilk öğesinin dizinini yan tümcesine Skip ve aralığın boyutunu yan tümcesine Take geçirin. Bu durumda yan tümcesi Take yan tümceden Skip sonra belirtilmelidir.
Yan tümcesini Take bir sorguda kullandığınızda, sonuçların yan tümcesinin istenen sonuçları içermesini sağlayacak Take bir sırayla döndürülmesini de sağlamanız gerekebilir. Sorgu sonuçlarını sıralama hakkında daha fazla bilgi için bkz . Order By Yan Tümcesi.
Sağlanan bir koşula bağlı olarak yalnızca belirli öğelerin döndürüleceğini belirtmek için yan tümcesini TakeWhile kullanabilirsiniz.
Örnek
Aşağıdaki kod örneği, yan tümcesini Take yan tümcesiyle Skip birlikte kullanarak sayfalardaki bir sorgudan veri döndürür. GetCustomers işlevi, sağlanan başlangıç dizini değerine kadar listedeki müşterileri atlamak için yan tümcesini kullanır Skip ve yan tümcesini Take kullanarak bu dizin değerinden başlayan bir müşteri sayfası döndürür.
Public Sub PagingSample()
Dim pageNumber As Integer = 0
Dim pageSize As Integer = 10
Dim customersPage = GetCustomers(pageNumber * pageSize, pageSize)
Do While customersPage IsNot Nothing
Console.WriteLine(vbCrLf & "Page: " & pageNumber + 1 & vbCrLf)
For Each cust In customersPage
Console.WriteLine(cust.CustomerID & ", " & cust.CompanyName)
Next
Console.WriteLine(vbCrLf)
pageNumber += 1
customersPage = GetCustomers(pageNumber * pageSize, pageSize)
Loop
End Sub
Public Function GetCustomers(ByVal startIndex As Integer,
ByVal pageSize As Integer) As List(Of Customer)
Dim customers = GetCustomerList()
Dim returnCustomers = From cust In customers
Skip startIndex Take pageSize
If returnCustomers.Count = 0 Then Return Nothing
Return returnCustomers
End Function
Ayrıca bakınız
- Visual Basic'da LINQ'e
Giriş - Arama Sorguları
- Seçim Deyimi
- From İfadesi
- Order By İfadesi
- Take While Yan Tümcesi
- Skip Maddesi