title: How to keep ASP.NET session during long request processing?
body: <p>The scenario is following:</p>
  
  <ol>
  <li>A user clicks to download a complex report that takes long time to complete (longer than the session timeout is).</li>
  <li>After the report is completed, user clicks on any other link, but the session is expired.</li>
  </ol>
  
  <p>The user is wondering why the session has expired during the long running request.</p>
  
  <p>How to tell ASP.NET not to expire session during the request? (To start counting the session timeout after the request is completed.)</p>
  
  <p><strong>UPDATE:</strong> The solution should work without JavaScript.</p>