2012-08-30 36 views

Respuesta

70

RedirectToAction le permite construir una url de redirección a una acción/controlador específico en su aplicación, es decir, utilizará la tabla de rutas para generar la URL correcta.

Redirect requiere que proporcione una URL completa para redirigir a.

Si usted tiene una acción Index en el controlador Home con el parámetro Id:

  1. Puede utilizar RedirectToAction("Index", "Home", new { id = 5 }) que generará la URL para usted basado en su tabla de rutas.

  2. Puede usar Redirect pero debe construir la URL usted mismo, por lo tanto, pase Redirect("/Home/Index/5") o como sea que funcione su tabla de rutas.

  3. No puede redirigir a google.com (una URL externa) usando RedirectToAction, debe usar Redirect.

RedirectToAction es para hacer 302 vuelve a dirigir en su solicitud y le da una forma más fácil de trabajar con su tabla de rutas.

Redirect está diseñado para hacer 302 redirecciones a todo lo demás, especialmente las URL externas, pero aún puede redireccionar dentro de su aplicación, solo tiene que construir las URL usted mismo.

Mejores prácticas: Utilice RedirectToAction para todo lo relacionado con las acciones/controladores de su aplicación. Si usa Redirect y proporciona la URL, deberá modificar esas URL manualmente cuando la tabla de rutas cambie.

+1

Significa que Redirect también puede llevarlo a URL Vs completamente diferentes. RedirectToAction solo se limita a la aplicación actual. Por favor corrígeme si estoy equivocado. –

+1

@gmailuser - Estás en lo cierto. – Omar

+0

Gracias amigo mío. –

Cuestiones relacionadas