如何预防系统.在c#中检索大量数据时抛出OutOfMemoryException

本文关键字:数据 OutOfMemoryException 检索 系统 何预防 | 更新日期: 2023-09-27 18:06:27

我有一个c#程序,在启动时用400万个Guids填充一个字典。我一直得到一个类型为"系统"的异常。此时出现OutOfMemoryException错误。

的例子:

using (reportingconn)
{
    var initialrowkeys = reportingconn.Query("select rowkey from table”);
}

谁能给我一些想法如何最好地检索大量的数据从SQL到字典?

如何预防系统.在c#中检索大量数据时抛出OutOfMemoryException

使用SqlDataReader(),这将逐行读取,而不是SqlDataAdapter.Fill.

似乎c#数据字典有2GB的内存限制。一个程序员朋友告诉我把我的主机应用程序从32位改为64位,以防止这种限制。这似乎解决了我的问题。