使用Lambda或linq或normal将数据列导入DataRow [英] Datacolumn into DataRow using Lambda or linq or normal

查看:41
本文介绍了使用Lambda或linq或normal将数据列导入DataRow的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我有一个如下的DataTable

ID COLA COLB COLC
1个AAA BBB CCC
2 DDD EEE FFF
3 GGG HHH III
4 JJJ KKK LLL

我有一个如下的课程
公共课程测试
{
public int ID {get; set;}
公用字符串COLUMN_NAME {get; set;}
公共字符串COLUMN_VALUE {get; set;}
}

现在,我想将上述数据表转换为List< test>.就像

TEST [0] = {ID = 1,COLUMN_NAME ="COLA",COLUMN_VALUE ="AAA"}
TEST [1] = {ID = 1,COLUMN_NAME ="COLB",COLUMN_VALUE ="BBB"}
TEST [2] = {ID = 1,COLUMN_NAME ="COLC",COLUMN_VALUE ="CCC"}
TEST [3] = {ID = 2,COLUMN_NAME ="COLA",COLUMN_VALUE ="DDD"}
TEST [4] = {ID = 2,COLUMN_NAME ="COLB",COLUMN_VALUE ="EEE"}
TEST [5] = {ID = 2,COLUMN_NAME ="COLC",COLUMN_VALUE ="FFF"}
TEST [6] = {ID = 3,COLUMN_NAME ="COLA",COLUMN_VALUE ="GGG"}
TEST [7] = {ID = 3,COLUMN_NAME ="COLB",COLUMN_VALUE ="HHH"}
TEST [8] = {ID = 3,COLUMN_NAME ="COLC",COLUMN_VALUE ="III"}
TEST [9] = {ID = 4,COLUMN_NAME ="COLA",COLUMN_VALUE ="JJJ"}
TEST [10] = {ID = 4,COLUMN_NAME ="COLB",COLUMN_VALUE ="KKK"}
TEST [11] = {ID = 4,COLUMN_NAME ="COLC",COLUMN_VALUE ="LLL"}

如何使用lambda表达式或linq实现此输出.


预先感谢,

Selvam S

Hi,

I have a DataTable as Below

ID COLA COLB COLC
1 AAA BBB CCC
2 DDD EEE FFF
3 GGG HHH III
4 JJJ KKK LLL

I have a class as below
public class Test
{
public int ID{get;set;}
public string COLUMN_NAME{get;set;}
public string COLUMN_VALUE{get;set;}
}

Now I want to convert the above datatable into List<test> as like

TEST[0]={ ID = 1, COLUMN_NAME = "COLA",COLUMN_VALUE = "AAA" }
TEST[1]={ ID = 1, COLUMN_NAME = "COLB",COLUMN_VALUE = "BBB" }
TEST[2]={ ID = 1, COLUMN_NAME = "COLC",COLUMN_VALUE = "CCC" }
TEST[3]={ ID = 2, COLUMN_NAME = "COLA",COLUMN_VALUE = "DDD" }
TEST[4]={ ID = 2, COLUMN_NAME = "COLB",COLUMN_VALUE = "EEE" }
TEST[5]={ ID = 2, COLUMN_NAME = "COLC",COLUMN_VALUE = "FFF" }
TEST[6]={ ID = 3, COLUMN_NAME = "COLA",COLUMN_VALUE = "GGG" }
TEST[7]={ ID = 3, COLUMN_NAME = "COLB",COLUMN_VALUE = "HHH" }
TEST[8]={ ID = 3, COLUMN_NAME = "COLC",COLUMN_VALUE = "III" }
TEST[9]={ ID = 4, COLUMN_NAME = "COLA",COLUMN_VALUE = "JJJ" }
TEST[10]={ ID = 4, COLUMN_NAME = "COLB",COLUMN_VALUE = "KKK" }
TEST[11]={ ID = 4, COLUMN_NAME = "COLC",COLUMN_VALUE = "LLL" }

How to achieve this output using lambda expression or linq.


Thanks in advance,

Selvam S

推荐答案

尝试一下
public static List<t> ConvertDS<t>(DataSet ds, Converter<datarow,> converter)
{
    return
        (from row in ds.Tables[0].AsEnumerable()
         select converter(row)).ToList();
}


这篇关于使用Lambda或linq或normal将数据列导入DataRow的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆