プログラマもどきの雑記

仕事の事だったり趣味の事だったり、本当に雑記。

プログラム初心者に捧げる、基本的なLinqの利用

新人がLinqを全く知らなかったので基本的な所だけちょっと書いてみた。

'こんなクラスがあったとして
Private Class Hoge
    Private ID As Integer
    Private Name As String
    Sub New(id Ad Integer, name As String)
        Me.ID = id
        Me.Name = name
    End Sub
End Class

'----------------------------------------------------------
Dim DataList As New List(Of Hoge)
DataList.Add(New Hoge(1,"1st"))
DataList.Add(New Hoge(2,"2nd"))
DataList.Add(New Hoge(3,"3rd"))
'↑のようにListを作成する。

'作成したListから「ID = 2」のデータを抽出してNameを変更したい場合
'まずLinqでID =2のデータを抽出
Dim LinqList = From x In DataList
                      Where x.ID = 2

'そして、抽出したデータのNameを変更
LinqList.First().Name = "hogehoge"

これだけで特定条件を満たすデータの値を変更する事が出来る。
上の例では絶対に1レコード取得出来ると分かっているので「LinqList.First()」とか書いているが
実際に使用する時はFor Each使うとか、まぁ前提条件によって適宜変更すればいいでしょう。

上の例自体は決して最適なコードでは無いが、基本的な例として参考になれば。