2017-04-08 127 views
0

我想转换DataTable中使用C#这样简单的方法来转换数据表使用C#

public void GetList() 
{ 

    ds = // here my dataset; 

    List<MasterList> result = new List<MasterList>(); 
    if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) 
    { 
     foreach (DataRow dt in ds.Tables[0].Rows) 
     { 
      result.Add(new MasterList() 
      { 
       Name = Convert.ToString(dt["Name"]), 
       Address = Convert.ToString(dt["Address"]), 
       City = Convert.ToString(dt["City"]) 
      }); 

     } 
    } 
} 

这个代码工作细到列表,列表,但我想知道简单的方法来转换数据表中列出,并这里使用了foreach循环。

那么这是什么解决方案?

+0

1S谷歌http://stackoverflow.com/questions/1427484/convert-datatable-to-listt – TriV

+0

或http://stackoverflow.com/questions/208532 /怎么办,你变频-A-数据表 - 到 - 一个泛型列表 – TriV

回答

1

使用LINQ,你可以做到以下几点:

List<MasterList> result = ds.Tables[0].AsEnumerable().Select(m => new MasterList() 
{ 
    Name = Convert.ToString(dt["Name"]), 
    Address = Convert.ToString(dt["Address"]), 
    City = Convert.ToString(dt["City"]) 
}).ToList() 
相关问题