From Tümcesi (Visual Basic)
Sorgu için bir veya daha fazla aralık değişkeni ve bir koleksiyon belirtir.
Syntax
From element [ As type ] In collection [ _ ]
[, element2 [ As type2 ] In collection2 [, ... ] ]
Bölümler
| Süre | Tanım |
|---|---|
element |
Gereklidir. Koleksiyonun öğeleri arasında devam etmek için kullanılan bir aralık değişkeni. Aralık değişkeni, sorgusu aracılığıyla devam ettiyseniz collection her üyesine başvurmak için collection kullanılır. Numaralanabilir bir tür olması gerekir. |
type |
İsteğe bağlı. elementtürü. typebelirtilmezse, element türünden collection belirtilir. |
collection |
Gereklidir. Sorgulanan koleksiyonu ifade eder. Numaralanabilir bir tür olması gerekir. |
Açıklamalar
yan tümcesi, bir sorgunun kaynak verilerini ve kaynak koleksiyondan bir öğeye From başvurmak için kullanılan değişkenleri tanımlamak için kullanılır. Bu değişkenler, aralık değişkenleri olarak adlandırılan değişkenlerdir. yan tümcesi bir sorgu için gereklidir, ancak yan tümcesi yalnızca toplu sonuçları döndüren bir From Aggregate sorguyu tanımlamak için kullanılır. Daha fazla bilgi için bkz. Aggregate Clause.
Birleştirilen birden From çok koleksiyonu tanımlamak için bir sorguda birden çok yan tümce belirtebilirsiniz. Birden çok koleksiyon belirtildikleri zaman, bunlar bağımsız olarak tekrarlar veya ilişkililerse bunları birebilirsiniz. Koleksiyonları yan tümcesini kullanarak örtülü olarak veya açıkça veya yan Select Join tümcelerini kullanarak bir arada Group Join bulundurun. Alternatif olarak, her ilişkili aralık değişkeni ve koleksiyonu virgülle ayrılmış şekilde tek bir yan tümcede birden çok aralık değişkeni ve From koleksiyon belirtebilirsiniz. Aşağıdaki kod örneği yan tümcesi için her iki söz dizimi seçeneklerini From de gösterir.
' Multiple From clauses in a query.
Dim result = From var1 In collection1, var2 In collection2
' Equivalent syntax with a single From clause.
Dim result2 = From var1 In collection1
From var2 In collection2
yan From tümcesi bir sorgunun kapsamını tanımlar ve bu da döngü kapsamına For benzer. Bu nedenle, element bir sorgu kapsamındaki her aralık değişkeninin benzersiz bir adı olmalıdır. Bir sorgu için birden çok yan tümce belirtemezseniz, sonraki yan tümceler yan tümcesinde aralık değişkenlerine veya önceki yan tümcede yer alan aralık From From From değişkenlerine From başvurabilirsiniz. Örneğin, aşağıdaki örnekte ikinci yan tümcede yer alan koleksiyonun ilk yan tümcede range değişkeninin özelliğini temel alan iç From içe geçmiş bir yan tümcesi yer almaktadır.
Dim allOrders = From cust In GetCustomerList()
From ord In cust.Orders
Select ord
Her From yan tümceyi, sorguyu geliştirmek için ek sorgu yan tümcelerinin herhangi bir birleşimi takip ediyor olabilir. Sorguyu aşağıdaki yollarla geliştirebilirsiniz:
ve yan tümcelerini kullanarak veya açıkça veya yan tümcelerini kullanarak birden çok
FromSelectkoleksiyonu örtülü olarakJoinGroup Joinbirleştirin.Sorgu sonuçlarını
Wherefiltrelemek için yan tümcesini kullanın.Yan tümcesini kullanarak sonucu
Order Bysırala.yan tümcesini kullanarak benzer sonuçları birlikte
Group Bygrupla.Tüm sorgu
Aggregatesonucu için değerlendirme yapmak üzere toplama işlevlerini tanımlamak için yan tümcesini kullanın.Değeri
Letkoleksiyon yerine bir ifade tarafından belirlenen bir yineleme değişkeni tanıtmak için yan tümcesini kullanın.Yinelenen sorgu
Distinctsonuçlarını yoksaymak için yan tümcesini kullanın., , ve yan tümcelerini kullanarak
SkipdönüşTakeSkip Whilesonucun parçalarınıTake Whilebelirleme.
Örnek
Aşağıdaki sorgu ifadesi, koleksiyonda From her nesne için bir aralık değişkeni cust bildiren bir yan Customer tümcesi customers kullanır. yan Where tümcesi, çıkışı belirtilen bölgeden müşterilerle kısıtlamak için range değişkenlerini kullanır. döngüsü, For Each sorgu sonucunda her müşterinin şirket adını görüntüler.
Sub DisplayCustomersForRegion(ByVal customers As List(Of Customer),
ByVal region As String)
Dim customersForRegion = From cust In customers
Where cust.Region = region
For Each cust In customersForRegion
Console.WriteLine(cust.CompanyName)
Next
End Sub
Ayrıca bkz.
- Sorgular
- Visual Basic'de LINQ'e Giriş
- For Each...Next Deyimi
- For...Next Deyimi
- Select Yan Tümcesi
- Where Yan Tümcesi
- Aggregate Yan Tümcesi
- Distinct Yan Tümcesi
- Join Yan Tümcesi
- Group Join Yan Tümcesi
- Order By Yan Tümcesi
- Let Yan Tümcesi
- Skip Yan Tümcesi
- Take Yan Tümcesi
- Skip While Yan Tümcesi
- Take While Yan Tümcesi