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.
Dönüştürme yöntemleri, giriş nesnelerinin türünü değiştirir.
LINQ sorgularındaki dönüştürme işlemleri çeşitli uygulamalarda kullanışlıdır. Aşağıda bazı örnekler verilmiştir:
yöntemi, Enumerable.AsEnumerable bir türün standart sorgu işlecinin özel uygulamasını gizlemek için kullanılabilir.
yöntemi, Enumerable.OfType LINQ sorgulaması için parametrelenmemiş koleksiyonları etkinleştirmek için kullanılabilir.
Enumerable.ToArray, Enumerable.ToDictionary, Enumerable.ToListve Enumerable.ToLookup yöntemleri, sorgu numaralandırılana kadar ertelemek yerine anında sorgu yürütmeyi zorlamak için kullanılabilir.
Yöntemler
Aşağıdaki tabloda, veri türü dönüştürmeleri gerçekleştiren standart sorgu işleç yöntemleri listelemektedir.
Adları "As" ile başlayan bu tablodaki dönüştürme yöntemleri, kaynak koleksiyonun statik türünü değiştirir ancak onu numaralandırmazlar. Adları "Kime" ile başlayan yöntemler kaynak koleksiyonu numaralandırır ve öğeleri ilgili koleksiyon türüne koyar.
| Yöntem Adı | Açıklama | Visual Basic Sorgu İfadesi Dizilimi | Daha Fazla Bilgi |
|---|---|---|---|
| AsEnumerable | olarak IEnumerable<T>yazılan girişi döndürür. | Uygulanamaz. | Enumerable.AsEnumerable |
| AsQueryable | Bir (genel) öğesini (genel) IEnumerableIQueryableöğesine dönüştürür. | Uygulanamaz. | Queryable.AsQueryable |
| Oyuncu Kadrosu | Bir koleksiyonun öğelerini belirtilen bir türe yayınlar. | From … As … |
Enumerable.Cast Queryable.Cast |
| OfType | Değerleri, belirtilen türe atanma yeteneklerine bağlı olarak filtreler. | Uygulanamaz. | Enumerable.OfType Queryable.OfType |
| ToArray | Bir koleksiyonu diziye dönüştürür. Bu yöntem sorgu yürütmeyi zorlar. | Uygulanamaz. | Enumerable.ToArray |
| ToDictionary | Öğeleri bir Dictionary<TKey,TValue> anahtar seçici işlevine yerleştirir. Bu yöntem sorgu yürütmeyi zorlar. | Uygulanamaz. | Enumerable.ToDictionary |
| ToList | Bir koleksiyonu öğesine List<T>dönüştürür. Bu yöntem sorgu yürütmeyi zorlar. | Uygulanamaz. | Enumerable.ToList |
| ToLookup | Öğeleri bir anahtar seçici işlevine göre bire Lookup<TKey,TElement> çok sözlüğe yerleştirir. Bu yöntem sorgu yürütmeyi zorlar. | Uygulanamaz. | Enumerable.ToLookup |
Sorgu İfadesi Söz Dizimi Örneği
Aşağıdaki kod örneği, yalnızca alt türde bulunan bir üyeye erişmeden önce bir türü alt türe atamak için From As yan tümcesini kullanır.
Class Plant
Public Property Name As String
End Class
Class CarnivorousPlant
Inherits Plant
Public Property TrapType As String
End Class
Sub Cast()
Dim plants() As Plant = {
New CarnivorousPlant With {.Name = "Venus Fly Trap", .TrapType = "Snap Trap"},
New CarnivorousPlant With {.Name = "Pitcher Plant", .TrapType = "Pitfall Trap"},
New CarnivorousPlant With {.Name = "Sundew", .TrapType = "Flypaper Trap"},
New CarnivorousPlant With {.Name = "Waterwheel Plant", .TrapType = "Snap Trap"}}
Dim query = From plant As CarnivorousPlant In plants
Where plant.TrapType = "Snap Trap"
Select plant
Dim sb As New System.Text.StringBuilder()
For Each plant In query
sb.AppendLine(plant.Name)
Next
' Display the results.
MsgBox(sb.ToString())
' This code produces the following output:
' Venus Fly Trap
' Waterwheel Plant
End Sub