Al realizar un Response.Redirect("pagina.aspx", false), no realliza la redirección. ¿Por qué?

2922 vistas

El segundo parámetro significa "¿tengo que interrumpir el proceso en curso antes de realizar la redirección?"

De esta manera, si el parámetro está en false, se esperará a terminar la página. Si  se realiza otra llamada al método Response.Redirect, seré éste último el que se ejecute.

Veamos un ejemplo erróneo



csharp
  1. try
  2. {
  3.   // ...
  4. }
  5. catch (Exception)
  6. {
  7.   Response.Redirect("error.aspx", false);
  8. }
  9. Response.Redirect("ok.aspx", false);



En caso de excepción queremos que se realice una redirección a una página de error, pero al tener el segundo parámetro en false, siempre se terminará haciendo la redirección hacia la página ok.aspx.