Transform a DataTable into Dictionary C#

前端 未结 8 1957
爱一瞬间的悲伤
爱一瞬间的悲伤 2021-02-02 07:13

I want to know how to transform a DataTable into a Dictionary. I did something like this.

using System.Linq;

internal Dictionary GetDict(Da         


        
8条回答
  •  刺人心
    刺人心 (楼主)
    2021-02-02 07:27

    Visual basic
    Using sql to load a datatable and create a dictionary

        Dim SalesRep As New System.Collections.Generic.Dictionary(Of String, String)(StringComparer.InvariantCultureIgnoreCase)
        Using tbl As New Data.DataTable("SalesRep")
            SqlCommand.CommandText = "Select Initial,FullName from QB_SalesRep"
            tbl.Load(SqlCommand.ExecuteReader())
            ' --- Option ONE use the array to iterate
            Array.ForEach(tbl.Rows.Cast(Of Data.DataRow).ToArray(),
                          Sub(f)
                              SalesRep.Add(f.ItemAsString("Initial"), f.ItemAsString("FullName"))
                          End Sub)
            ' --- Option TWO use plain linq to create the dictionary
            SalesRep = tbl.Rows _
                .Cast(Of Data.DataRow) _
                .AsEnumerable() _
                .ToDictionary(Function(f) f.Item("Initial").toString(), Function(f) f.Item("FullName").toString)
        End Using
    

提交回复
热议问题