C#-将数据表排列成一个|&引用;分隔格式,每个记录的列数可能不同
我已将SQL查询的结果集导入如下数据表: 是否有一种方法可以将一行写入文本文件,以便根据列中不同值的数量将代码列转换为这样排列的单行C#-将数据表排列成一个|&引用;分隔格式,每个记录的列数可能不同,c#,sql,datatable,C#,Sql,Datatable,我已将SQL查询的结果集导入如下数据表: 是否有一种方法可以将一行写入文本文件,以便根据列中不同值的数量将代码列转换为这样排列的单行 1 |鲍勃|约翰逊| 1989年4月9日| 1 | 2 | 3 | 4 | 5 | 6使用LINQ GroupBy语句 就是 var lines = myDataTable.AsEnumerable().GroupBy(row => //grouping Selector new { id = row.id, , firstN
1 |鲍勃|约翰逊| 1989年4月9日| 1 | 2 | 3 | 4 | 5 | 6使用LINQ GroupBy语句 就是
var lines = myDataTable.AsEnumerable().GroupBy(row => //grouping Selector
new { id = row.id,
, firstName = row.firstName
, lastName = row.lastName
, dob = row.dob
}, (key, rows) => //result selector
(key.id + "|"
+ key.firstname + "|"
+ key.firstname + "|"
+ key.dob + "|"
+ string.Join("|", rows.Select(codeRow => codeRow.code))
)
);
如果使用非类型化数据表,请将row.foo替换为row[“foo”]
这将为您提供一个包含所需文件行的IEnumerable。把它写在文件里就行了
很明显,我还没有测试过,甚至还没有编译过,但这只是一个关于如何在Linq中进行分组的粗略描述