LINQ

LINQ チート

Public Sub A() Dim list = New List(Of Integer) From {1, 84, 95, 95, 40, 5, 6} Dim test = list.Select(AddressOf adder) Console.WriteLine("First: " + list.First().ToString) Console.WriteLine("Last: " + list.Last().ToString) Console.WriteLine…

DataListに対するソート

'単一項目しか持たないListのソート Dim wList2 As New List(Of String) wList2 = wList2.OrderBy(Function(x) x).ToList (*)Sortした値をリストやDGVのデータソースにセットするなら、ToList! ’複数項目あるリストを指定項目でソート Dim orderByList = li…

LINQ:複数項目のSelect

'---複数項目Selectする場合は、匿名クラスに値を入れないといけない Dim list = list6.Select(Function(x) New With {.GrantSum = x.UserGrant + 100, .UserGrant}) For Each x In list Console.WriteLine(x.GrantSum & " " & x.UserGrant) Next ’---Select…

LINQ:クラスのリストから項目、値を条件に指定し削除

■条件指定にて削除 DList.RemoveAll(Function(x) x.GetType().GetProperty(keyName). GetValue(x) = keyValue) ・Dlist:削除対象List ・keyName:条件を掛ける対象列名 ・keyValue:条件値

DataTableに対するソート

■LINQ データテーブルに対してソートを実行し、その結果をDataRowの配列として受領 Dim dRows As DataRow() = dt.AsEnumerable.OrderBy(Function(p) p(0)).ToArray

自作クラスのLISTに対して重複を削除

■自作クラスのLISTに対して重複を削除するには、LINQを使う ex)TAddressクラスのLISTに対して、ShikuChoName列の値で重複を削除 したLISTを取得する。取得したLISTをコンボボックスにセットする。 Dim tList As IEnumerable(Of TAddress) = tList.GroupBy(Fu…