Veri Türlerini Dönüştürme (Visual Basic)
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ı "Farklı" ile başlayan bu tablodaki dönüştürme yöntemleri, kaynak koleksiyonun statik türünü değiştirir ancak numaralandırmaz. 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 Söz Dizimi | 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 |
Cast | 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ür üzerinde kullanılabilen bir üyeye erişmeden önce bir türü alt türe atamak için yan tümcesini kullanır From As
.
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
Ayrıca bkz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin