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.
Bir veya daha fazla aralık değişkeni ve sorgu için bir koleksiyon belirtir.
Sözdizimi
From element [ As type ] In collection [ _ ]
[, element2 [ As type2 ] In collection2 [, ... ] ]
Parçalar
| Süre | Tanım |
|---|---|
element |
Gerekli. Koleksiyonun öğeleri arasında yineleme yapmak için kullanılan bir aralık değişkeni . Bir aralık değişkeni, sorgu aracılığıyla yinelendiğinde öğesinin collection her üyesine başvurmak collectioniçin kullanılır. Numaralandırılabilir bir tür olmalıdır. |
type |
Opsiyonel. Türü element. Belirtilmezse type , türü element türünden collectionçıkarılır. |
collection |
Gerekli. Sorgulanacak koleksiyona başvurur. Numaralandırılabilir bir tür olmalıdır. |
Açıklamalar
From yan tümcesi, bir sorgunun kaynak verilerini ve kaynak koleksiyondaki bir öğeye 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ılır.
From Yan tümcesi sorgu için gereklidir, ancak Aggregate yan tümcesi yalnızca toplu sonuçları döndüren bir sorguyu tanımlamak için kullanılır. Daha fazla bilgi için bkz . Aggregate Yan Tümcesi.
Birleştirilecek birden çok From koleksiyonu tanımlamak için sorguda birden çok yan tümce belirtebilirsiniz. Birden çok koleksiyon belirtildiğinde, bunlar bağımsız olarak yinelenir veya ilişkiliyse bunlara katılabilirsiniz. Yan tümcesini Select kullanarak veya veya Group Join yan tümcelerini kullanarak Join koleksiyonları örtük olarak birleştirebilirsiniz. Alternatif olarak, tek From bir yan tümcede birden çok aralık değişkeni ve koleksiyon belirtebilirsiniz; ilgili her aralık değişkeni ve koleksiyonu diğerlerinden virgülle ayrılmıştır. Aşağıdaki kod örneği yan tümcesi From için her iki söz dizimi seçeneğini 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
From yan tümcesi, bir döngünün kapsamına benzer bir sorgunun For kapsamını tanımlar. Bu nedenle, sorgu kapsamındaki her element aralık değişkeninin benzersiz bir adı olmalıdır. Sorgu için birden çok From yan tümce belirtebildiğiniz için, sonraki From yan tümceler yan tümcesindeki From aralık değişkenlerine veya önceki From yan tümcedeki aralık değişkenlerine başvurabilir. Örneğin, aşağıdaki örnekte ikinci yan tümcedeki koleksiyonun birinci yan tümcedeki aralık değişkeninin özelliğini temel aldığı iç içe From bir yan tümce gösterilmektedir.
Dim allOrders = From cust In GetCustomerList()
From ord In cust.Orders
Select ord
Her From yan tümceyi, sorguyu daraltmak için ek sorgu yan tümcelerinin herhangi bir bileşimi takip edebilir. Sorguyu aşağıdaki yollarla daraltabilirsiniz:
ve
Selectyan tümcelerini kullanarak veya veyaGroup Joinyan tümcelerini kullanarakFromJoinbirden çok koleksiyonu örtük olarak birleştirin.WhereSorgu sonucunu filtrelemek için yan tümcesini kullanın.Yan tümcesini
Order Bykullanarak sonucu sıralayın.yan tümcesini kullanarak benzer sonuçları birlikte gruplandırın
Group By.Sorgu sonucunun
Aggregatetamamı için değerlendirilecek toplama işlevlerini tanımlamak için yan tümcesini kullanın.LetDeğeri koleksiyon yerine bir ifade tarafından belirlenen bir yineleme değişkeni eklemek için yan tümcesini kullanın.Yinelenen sorgu sonuçlarını yoksaymak için yan tümcesini
Distinctkullanın., ,
TakeSkip WhileveTake Whileyan tümcelerini kullanarak döndürülecek sonucunSkipbölümlerini tanımlayın.
Örnek
Aşağıdaki sorgu ifadesi, koleksiyondaki her Customer nesne için bir aralık değişkeni cust bildirmek üzere bir From yan tümcesi customers kullanır.
Where yan tümcesi, belirtilen bölgedeki müşterilerle çıkışı kısıtlamak için aralık değişkenini kullanır. döngü, For Each sorgu sonucundaki 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 bakınız
- Arama Sorguları
- Visual Basic'da LINQ'e
Giriş - Her Biri İçin...Sonraki Deyimi
- For...Next İfadesi
- Seçim Deyimi
- Where Yan Tümcesi
- Toplama Madde
- Ayırt Edici Yan Tümce
- Birleştirme Koşulu
- Group Join Yan Tümcesi
- Order By İfadesi
- Let Yan Tümcesi
- Skip Maddesi
- Al Tümcesi
- Skip While Yan Tümcesi
- Take While Yan Tümcesi