13 MB的字节数组在asp.net中出现内存不足异常

13 MB的字节数组在asp.net中出现内存不足异常,asp.net,arrays,memory,byte,allocation,Asp.net,Arrays,Memory,Byte,Allocation,我有一个通过将HTML转换成字节数组将其转换为PDF的应用程序。然而,我观察到,当字节数组大小超过13MB时,它给出:OutOfMemoryException 据我所知,我可以在我的32位机器中为变量分配最大2GB的内存,我还可以处理其他使用的变量。那我最好不要记性差,不是吗 另外,当我最初将字节数组大小声明为1 gb时,它不会给出错误,但当它被分配数据时,数组的大小会根据数据的大小调整大小,当它超过13 gb时,它会崩溃吗 为什么阵列会调整大小,而我已经声明它可以容纳1gb内存 **编辑: 以

我有一个通过将HTML转换成字节数组将其转换为PDF的应用程序。然而,我观察到,当字节数组大小超过13MB时,它给出:
OutOfMemoryException

据我所知,我可以在我的32位机器中为变量分配最大2GB的内存,我还可以处理其他使用的变量。那我最好不要记性差,不是吗

另外,当我最初将字节数组大小声明为1 gb时,它不会给出错误,但当它被分配数据时,数组的大小会根据数据的大小调整大小,当它超过13 gb时,它会崩溃吗

为什么阵列会调整大小,而我已经声明它可以容纳1gb内存

**编辑:

以下是导致错误的代码行:

objpage.Layout(html1); //html1 holds my huge full HTML which is of approx 5.5k word doc                 //pages 

pdfBuffer = new byte[1073741824]; //declare the byte array of size 1 gb,no error here.  //Note, i just added this declaration, this is not the cause of the problem, it wasn't //initially there 

pdfBuffer = document1.WriteToMemory(); //This is my API method of the third party tool  //which converts pdf document object to byte array. This line is where the error comes (my //array of 1 GB gets resized to 13+ MB) 

我以前也有类似的问题

我试着在
webconfig
文件中编辑一些代码,这对我很有用

<system.web>
<httpRuntime executionTimeout="100" maxRequestLength="819200" useFullyQualifiedRedirectUrl="false"/>
</system.web>

您是否尝试过编辑执行超时和最大请求长度?尝试更改它并给它一个更大的数字。

尝试一次

 <system.web>
 <httpRuntime maxRequestLength="2000000000" executionTimeout="99999999"/>
 <pages validateRequest="false"/>
 </system.web>


这里根据您的应用程序增加值

什么类型的异常?它给出了“OutOfMemoryException”,向我们展示了您的一些代码。如果看不到某些东西,很难进行调试。web应用程序通常限制为300MB。如果增长阵列,它需要分配一个新副本,因此不能将阵列增长到150 MB以上。由于应用程序已经在为其他事情使用一些内存,它甚至比这个还要少。这将有助于查看出现异常的代码。很难将代码放在这里,因为它太大了,而且代码块没有任何用处,因为我的HTML字符串会转到5500字左右的文件页,我使用第三方(HIQPDF)工具将其转换为PDF文档。然后,该工具中的一个方法将整个文档转换为字节数组,如下所示:感谢您的建议,但是我当前的参数已经具有更高的值。以下是我当前的web.config条目:您需要为IIS和应用程序设置最大值。我的代码也无法在本地计算机上运行,因此目前没有IIS设置问题。