使用Lambda或linq或normal将数据列导入DataRow [英] Datacolumn into DataRow using Lambda or linq or normal
问题描述
我有一个如下的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屋!