Linq结果将所有行数据加入字符串

Rea*_*eel 1 .net c# linq asp.net string

200k从中获取记录的数据database并将其存储在带有linq结果的结果中ColumnName EMAIL.现在,我希望显示所有来自的电子邮件,linq result并将其添加到TextBoxa中,.

实际上,我已经准备好DataTable了这个linq结果并将所有行数据与代码组合在一起:

var dataLists = (from xx in VDC.SURVEY_EMAIL_LIST
                  where xx.EMAIL_GROUP_ID == ListGroupID
                  select xx).ToList();

DataTable DtDataLists = LINQToDataTable(dataLists);

EmailIDS = string.Join(",", DtDataLists.AsEnumerable().Select(x => x["EMAILID"].ToString()).ToArray());
Run Code Online (Sandbox Code Playgroud)

但是,准备工作DataTable需要很长时间.所以,我想string EmailIDS直接从linq结果中做好准备.谁能帮我?

Den*_*nko 5

这段代码应该适合你,但我不确定它会更快:

string.Join(",", dataLists.Select(x => x.EMAILID));
Run Code Online (Sandbox Code Playgroud)

  • @RealSteel只是将过滤语句(`Where`)添加到表达式中.`string.Join(",",dataLists.Where(x => x.EMAIL!= null).Select(x => x.EMAILID));` (2认同)