C#/VB 指定した特定フィールド名の値を取得する(ラムダ式)

フィールド名を指定してデータを抽出するにはどうしたらいいですか?

LINQラムダ式のSelectを使って取得することができます。

目次

受講者数No.1!初心者からプロへ導く信頼のスクール

    短期間で習得可能!未経験から実践力を磨く充実のプログラム

    今なら無料相談でAmazonギフトカードがもらえる!

    ラムダ式のSelectを利用して特定フィールド名の値を取得する

    ラムダ式のSelect区を利用することで、特定フィールド名の値を取得することができます。

    ・C#の場合
    コレクション.Select(x => x.Item1).ToList()
    ・VB.NETの場合
    コレクション.Select(function(x) x.Item1).ToList()

    複数の列を取得したい場合は、匿名オブジェクトとして複数フィールドを指定します。

    ・C#の場合
    コレクション.Select(x => new { item1 = x.Item1,
    item2 = x.Item2}).ToList()

    ・VB.NETの場合
    コレクション.Select(function(x) New With {Key .item1 = x.Item1,
    Key .item2 = x.Item2}).ToList()

    List<(int,string)> lstItem = new List<(int,string)>() { (3,"sakura"),(3,"suisei"),(4,"usada"),(4,"koyori") };
    //1つ
    var ret = lstItem.Select(x => x.Item1).ToList();
    ret.ForEach(x => Debug.WriteLine(x));
    
    //複数
    var ret2 = lstItem.Select(x => new { item1 = x.Item1,
                                            item2 = x.Item2}).ToList();
    ret2.ForEach(x => Debug.WriteLine(x));
    Dim lstItem = New List(Of (Integer, String))()
    
    lstItem.Add((3, "sakura"))
    lstItem.Add((3, "suisei"))
    lstItem.Add((4, "usada"))
    lstItem.Add((4, "koyori"))
    
    '1つ
    Dim ret = lstItem.[Select](Function(x) x.Item1).ToList()
    ret.ForEach(Sub(x) Debug.WriteLine(x))
    
    '複数
    Dim ret2 = lstItem.[Select](Function(x) New With {
    	Key .item1 = x.Item1,
    	Key .item2 = x.Item2
    }).ToList()
    ret2.ForEach(Sub(x) Debug.WriteLine(x))

    リスキリングでキャリアアップしてみませんか?

    リスキリング(学び直し)は、経済産業省が推奨しており、

    今だけ、最大70%のキャッシュバックを受けることができます。

    リスキリング 給付金が出るスクール紹介

    最大70%の給付金が出るおすすめのプログラミングスクール!

    国策で予算が決められているため申し込みが多い場合は早期に終了する可能性があります!

    興味のある方はすぐに確認しましょう。

    よかったらシェアしてね!
    • URLをコピーしました!
    • URLをコピーしました!
    目次