我在DataTable中有一个包含多行的列,我想要它们在一行中,并且不想循环遍历数据表的每一行, 这是样本数据表
Results
-------
Clinet1
Clinet2
Clinet3
Clinet4
我想得到一个字符串
Clinet1,Clinet2,Clinet3,Clinet4
但是没有for循环使用LINQ。
我尝试了下面的代码,但它不适合我
string Details = myDataTable.Rows
.Cast<DataRow>()
.Where(x => x["Results"].ToString();
答案 0 :(得分:0)
请使用String.join。
string Details = String.join(",", myDataTable.Rows
.Cast<DataRow>()
.Where(x => x["Results"] == UserName).ToArray());
答案 1 :(得分:0)
您可以使用AsEnumerable
返回IEnumerable<T>
对象,其中通用参数T
为DataRow
,String.Join
将行连接为{{1}像这样;
string
答案 2 :(得分:0)
使用LINQ:
string Details = myDataTable.Rows.Cast<DataRow>()
.Where(x => x["Results"] == UserName)
.Select(i => i.ToString()).Aggregate((i, j) => i + "," + j)