title: System.OutOfMemoryException on Windows Server 2008 R2 + ASP.NET 3.5
body: <p>Today, a production server at my work started to get this OutOfMemoryException, but as far as I know, there has not been any code updates to the website.</p>
  
  <p>I pasted the stack trace below, but any ideas on what might be happening?
  Basically, this header control, downloads a portions of a website from a remote server and includes it as part of the HTML.</p>
  
  <p>Server Error in '/' Application.
      Exception of type 'System.OutOfMemoryException' was thrown.
      Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.</p>
  
  <pre><code>Exception Details: System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
  
  Source Error:
  
  Line 58:         else
  Line 59:         {
  Line 60:             thisHeader = Cache[headerCacheKey].ToString() + "\n&lt;!-- pulled from cache --&gt;\n";
  Line 61:         }
  Line 62:         if (!String.IsNullOrEmpty(thisHeader))
  
  
  Source File: ...
  
  Stack Trace:
  
  [OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.]
     System.String.Concat(String str0, String str1) +66
     ASP.controls_header_ascx.Page_Load(Object sender, EventArgs e) in ...:60
     System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +25
     System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +42
     System.Web.UI.Control.OnLoad(EventArgs e) +132
     System.Web.UI.Control.LoadRecursive() +66
     System.Web.UI.Control.LoadRecursive() +191
     System.Web.UI.Control.LoadRecursive() +191
     System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2428
  </code></pre>