Hemos visto hasta ahora que nuestras acciones (recordemos que las acciones son los métodos públicos de un controlador) deben devolver un objeto de la clase ActionResult.
En ejemplos anteriores hemos utilizado los métodos View() y Content() para generar un objeto de este tipo, pero estos no son los únicos métodos que generan un resultado de una acción (ActionResult).
Dependiendo de la respuesta que queramos dar podremos hacer uso de los siguientes métodos, con sus correspondientes ActionResults, que generan desde texto plano (como Content()) hasta la lectura de un fichero (método File()) o la redirección a una nueva URL (método Redirect()):
MÉTODO | ACTION RESULT | DESCRIPCIÓN |
Content() | ContentResult | Devuelve una cadena de texto. |
– | EmptyResult | (sin respuesta) |
File() | FileContentResult FilePathResult FileStreamResult |
Devuelve el contenido de un fichero. |
– | HttpUnauthorizedResult | Devuelve un error de autorización (403) |
JavaScript() | JavaScriptResult | Devuelve un fragmento de código JavaScript a ejecutar. |
Json() | JsonResult | Devuelve datos en formato JSON. |
Redirect() | RedirectResult | Redirecciona a una nueva URL. |
RedirectToRoute() RedirectToAction() |
RedirectToRouteResult | Redirecciona a otra acción. |
View() PartialView() |
ViewResult PartialViewResult |
Traspasa el control a una vista. |
A continuación echaremos un vistazo por encima a los elementos más importantes de esta tabla.