Penggunaan LINQ Pada Visual Studio .Net - I [ LINQ to Object ]

 


Berikut adalah cara penggunaan LINQ to Object :

LINQ to Object merupakan LINQ untuk melakukan proses query kedalam OBJECT collection  ( Array, ArrayList, HashTable, Directory, List & user define collection). 

Contoh mengakses system file pada computer :

Dim FileList = From file In My.Computer.FileSystem.GetFiles(CurDir())  Select file

Dim hasil = "List File" + vbCrLf

For Each file In FileList

 hasil = hasil + " " + file.ToString + vbCrLf

Next

MsgBox(hasil) 



Berikut adalah LINQ to Object  collection terdiri dari :

1. Array Collection 

Contoh data array yang huruf depan “S” saja.

Dim ahari() As String = {"senin", "selasa", "rabu", "kamis", "jum’at", "sabtu", "minggu"}

 Dim LINQ = From item In ahari  Where Microsoft.VisualBasic.Left(item, 1) = "s" Select item

 Dim hasil = "Hasil Query" & vbCrLf

 For Each item In LINQ

 hasil = hasil & item & vbCrLf

 Next

 MsgBox(hasil) 


2. ArrayList Collection

Contoh mengakses yang berhuruf depan “J”

Dim apelajaran As New ArrayList

 apelajaran.Add("Matematika")

 apelajaran.Add("Fisika")

 apelajaran.Add("Kimia")

 apelajaran.Add("Komputer")

 apelajaran.Add("Kesenian")

 apelajaran.Add("Sejarah")

 Dim LINQ = From item In apelajaran Where Microsoft.VisualBasic.Left(item, 1) = "K" _ 

Select item

 Dim hasil = "List Pelajaran" & vbCrLf

 For Each item In LINQ

 hasil = hasil & item & vbCrLf

 Next

 MsgBox(hasil) 


3. HashTable Collection

Contoh menampilkan keyed yang nilainya lebih dari 3

Dim oHashTable As New Hashtable

 oHashTable.Add(1, "VB")

 oHashTable.Add(2, "C#")

 oHashTable.Add(3, "JavaScript")

 oHashTable.Add(4, "Hash Table")

 oHashTable.Add(5, "Query")

 oHashTable.Add(6, "LINQ")

 Dim LINQ = From item In oHashTable  Where item.key > 3  Order By item.key  Select item

 Dim hasil = "List HashTable" & vbCrLf

 For Each item As DictionaryEntry In LINQ

 hasil=hasil & "Key:" & item.Key & " Value :" & item.Value & vbCrLf

 Next

 MsgBox(hasil



4. User Define ArrayList Collection

Pada tahap ini akan mengunakan LINQ untuk mengakses sebuah Type data yang collection yang dibuat sendiri.  

Buat kelas Pelajaran dengan nama : pelajaran.vb 

Public Class hasilujian

 Public Kode As String

 Public Nama As String

 Public Murid As String

 Public Kelas As String

 Public Nilai As Integer

End Class 

Buat form dengan menambahkan button dan isikan sintak pada event klik button tersebut

Dim hasilujian1 As New hasilujian With {.Kode = "01",   .Nama = "Matematika", _

 .Murid = "John",   .Kelas = "1 SMP",   .Nilai = 80 }

 Dim hasilujian2 As New hasilujian With {.Kode = "02",  .Nama = "Fisika", _

 .Murid = "John",  .Kelas = "1 SMP",  .Nilai = 85}

 Dim hasilujian3 As New hasilujian With {.Kode = "03",  .Nama = "Bahasa Inggris", _

 .Murid = "John",  .Kelas = "1 SMP",  .Nilai  = 75 }

 Dim ahasilujian As New ArrayList()

 ahasilujian.Add(hasilujian1)

 ahasilujian.Add(hasilujian2)

 ahasilujian.Add(hasilujian3)

 Dim LINQ = From item As hasilujian In ahasilujian Where item.Nilai  > 75  Select item 

For Each item In LINQ

 MsgBox("Kode : " & item.Kode & vbCrLf &  "Nama : " & item.Nama & vbCrLf & _

       "Kelas : " & item.Kelas & vbCrLf & "Nilai : " & item.Nilai)

 Next