将linq查询导出为文本文件

本文关键字:文本 文件 linq 查询 | 更新日期: 2023-09-27 18:16:51

我想从linq查询中创建一个文本文件。关键是我的查询每次产生超过3000条记录,当我使用foreach时,需要2分钟才能提取所有记录和字段数据。

foreach (var query3 in query)
{
    line += (string)query3.Name.Trim() +"'t"+(string)query3.Code.Trim()+"'n";
}

如何将linq查询导出到文本文件或字符串变量?我的查询类似于:

var Query=from c in db.Exp select c;

将linq查询导出为文本文件

在执行大量字符串追加时不应该使用string。由于string是不可变对象,因此每次迭代都会分配一个新的内存块。你应该使用StringBuilder:

StringBuilder line = new StringBuilder();
foreach (var q2 in query)
{
    line.AppendFormat("{0}'t{1}'n", query3.Name.Trim(), query3.Code.Trim());
}
File.WriteAllText(@"...", line.ToString());