title: Thread.Abort errors that happen on Server.Transfer
body: <p>I'm getting a couple errors in some cases when a <code>Server.Transfer</code> happens.</p>
  
  <p>Thread was being aborted.</p>
  
  <pre><code>at System.Web.HttpServerUtility.ExecuteInternal(IHttpHandler handler, TextWriter writer, Boolean preserveForm, Boolean setPreviousPage, VirtualPath path, VirtualPath filePath, String physPath, Exception error, String queryStringOverride)     
  at System.Web.HttpServerUtility.Execute(String path, TextWriter writer, Boolean preserveForm)     
  at System.Web.HttpServerUtility.Transfer(String path)     
  at App._Default.TransferToCheckLoginPage() in blahblah\Default.aspx.vb:line 31     
  at App._Default.Page_Load(Object sender, EventArgs e) in blahblah\Default.aspx.vb:line 18
  </code></pre>
  
  <p>Thread was being aborted. </p>
  
  <pre><code>at System.Threading.Thread.AbortInternal()     
  at System.Threading.Thread.Abort(Object stateInfo)     
  at System.Web.HttpResponse.End()     
  at System.Web.HttpServerUtility.Transfer(String path)     
  at App.ASPX.ck_login.TransferToStartPage() in blahblah\ck_login.aspx.vb:line 45     
  at App.ASPX.ck_login.Page_Load(Object sender, EventArgs e) in blahblah\ck_login.aspx.vb:line 33
  </code></pre>
  
  <p>now the strange thing is that the transfer completes (on some occasions it does not, which is why I am interested in this error)</p>
  
  <p>What ASP.Net lifecycle events happen during a server.transfer?</p>
  
  <p>In one case, its happening when Server.Transfer() is pointed to an html page that has the extension .aspx (There is no page directive) but an inline asp call &lt;% %> (and it has a frame that points to a normal .aspx page) </p>
  
  <p>As this is a currently deployed app, I'm not looking to do too many changes to it if I don't have to.  I'm more interested in knowing what in the <code>Server.Transfer</code> process would abort a thread.</p>