DataTable联接所有行数据

本文关键字:数据 DataTable | 更新日期: 2023-09-27 18:27:56

实际上,我有一个包含2000行的DataTable和一个ColumnName EMAIL。现在,我想显示来自DataTable的所有电子邮件,并通过用,分隔将它们添加到TextBox

我通过for循环来实现这一点,但是,这需要很长时间。

事实上,我已经习惯了获得ColumnNames:

string[] columnNames1 = (from dc in table.Columns.Cast<DataColumn>()
                                select dc.ColumnName).ToArray();

对于joining,是否存在将所有行数据转换为单个字符串的类似情况?

DataTable联接所有行数据

var text = string.Join(",", table.AsEnumerable()
                                 .Select(x=>x["EMAIL"].ToString())
                                 .ToArray());

假设任意一个值为NULL表示,发生获取NULL对象引用错误

var text=string.Join(",", table.AsEnumerable().Select(x => 
x["EMAIL"].ToString()).ToArray());

所以检查字段值,然后添加值

var text=string.Join(",", table.AsEnumerable().Select(x => 
((x["EMAIL"]) ? x["EMAIL"] : "").ToString()));