基本上我使用实体框架来查询一个巨大的数据库。我想返回一个字符串列表,然后将其记录到一个文本文件中。
List<string> logFilePathFileName = new List<string>();
var query = from c in DBContext.MyTable where condition = something select c;
foreach (var result in query)
{
filePath = result.FilePath;
fileName = result.FileName;
string temp = filePath + "." + fileName;
logFilePathFileName.Add(temp);
if(logFilePathFileName.Count %1000 ==0)
Console.WriteLine(temp+"."+logFilePathFileName.Count);
}
但是,当logFilePathFileName.Count=397000
. 例外是:
引发了“System.OutOfMemoryException”类型的异常。
System.Data.Entity.dll 中出现“System.OutOfMemoryException”类型的第一次机会异常
更新:
我想使用不同的查询说:选择前 1000 名然后添加到列表中,但我不知道 1000 之后然后呢?