2011-05-20 23 views
5

En MVC 3-ASP.NET, estoy validando el nivel de permiso en la página en el controlador. Si el usuario está autorizado para ver la página, entonces estoy usando el siguiente código para procesarla, pero no sé cómo redireccionar a una nueva vista si no está autorizadoMVC 3 -ASP.NET Redirigir a vista diferente

¿Alguien podría decirme cómo mostrar alerta diciendo, usted no están autorizados para ver la página y redirigir a la página de inicio?

public ActionResult viewName() 
if(userAuthorised) 
{ 
return View() 
} 
else 
{ 
    //Alert Message 
    //Redirect to different view like Home Page.. 
} 

¿Algún ejemplo, por favor?

Gracias

Respuesta

5

Tienes 2 opciones. 1) Crear una vista error estándar y devolver esta en el otro:

else 
{ 
    ErrorModel viewModel = new ErrorModel(){Msg="Error"}); 
    return View("Error", viewModel); 
} 

2) utilizar un redireccionamiento a la acción que apunta a otro método controlador que devuelve el error Ver

else 
{ 
    return RedirectToAction("BadUser"); 
} 


public ViewResult BadUser() 
{ 
    ErrorModel viewModel = new ErrorModel(){Msg="Error"}); 
    return View("Error", viewModel); 
} 
+0

Gracias, estoy usando el segundo enfoque. gracias. –