【问题标题】:C# OutOfMemoryExceptionC# OutOfMemoryException
【发布时间】:2012-02-25 19:58:18
【问题描述】:

我在这个循环中遇到了内存不足的异常......但是,它甚至从未达到第二次迭代。抛出异常时日期索引为0。

<% int date = 0; %>
   <% while (date < Model.TimePeriod1.Count) { %>
      <tr>
         <% for (int i = 0; i < 7; i++)
            { %>
               <td><%: Model.TimePeriod1[date] %></td>
                  date = date + 1;
                  <% } %>
      </tr>
   <% } %>

【问题讨论】:

    标签: c# out-of-memory


    【解决方案1】:

    您的date = date + 1; 是html,而不是代码;因此它永远不会改变date,因此它用输出缓冲区填充整个内存,用于大量Model.TimePeriod1[0]。在%&gt;&lt;/td&gt; 之后添加蜂刺:

      <tr>
         <% for (int i = 0; i < 7; i++)
            { 
               %><td><%: Model.TimePeriod1[date] %></td><%
               date = date + 1;
            } %>
      </tr>
    

    【讨论】:

      猜你喜欢
      • 2016-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-04
      • 2012-01-03
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      相关资源
      最近更新 更多