Usuário com melhor resposta
assar informações de um Controller para .cshtml

Pergunta
-
Pessoal;
Em meu controller tenho o seguinte trecho de código:
public ActionResult Login(LoginModel model) { if (ModelState.IsValid) { UsuarioService service = new UsuarioService(); UsuarioModel userModel = new UsuarioModel(); userModel = service.authenticate(model.UserName.ToUpper(), model.Password.ToUpper()); if (userModel != null) { FormsAuthenticationTicket authenticationTicket = new FormsAuthenticationTicket(model.UserName, false, 60); string encryptTicket = FormsAuthentication.Encrypt(authenticationTicket); HttpCookie authCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptTicket); Response.Cookies.Add(authCookie); return RedirectToAction("Index", "Home"); } }
Gostaria de saber como faço para conseguir obter os dados do userModel na minha página HOME que é um .cshtml.
Lembrando que estou utilizando asp net MVC 4 Razor.
Obrigado.
Respostas
-
Você pode colocar em uma variável de sessão e recuperar em qualquer página, inclusive na master page:
Session["UserModel"] = userModel;
Para pegar:
UsuarioModel userModel = (UsuarioModel)Session["UserModel"];
Depois você pode passar via viewbag, viewdata.
- Marcado como Resposta welington jrModerator segunda-feira, 5 de março de 2018 11:22
-
No redirectToAction:
return RedirectToAction("Index", "Home", UserModel);
na Action Index dentro do controller Home:
public ActionResult Index(UsuarioModel userModel) { if(userModel==null){ userModel=new UsuarioModel; } return View(userModel) }
Na View Index:
@model UsuarioModel <h1>@Model.Nome</h1>
"just because you've abandoned your hopes of becoming a great thinker or scientist, don't give up on attaining freedom, achieving humility, serving others..." - 7.67 - Meditations - Marcus Aurelius
- Sugerido como Resposta Richof quinta-feira, 20 de fevereiro de 2014 23:03
- Marcado como Resposta welington jrModerator segunda-feira, 5 de março de 2018 11:22
Todas as Respostas
-
Você pode colocar em uma variável de sessão e recuperar em qualquer página, inclusive na master page:
Session["UserModel"] = userModel;
Para pegar:
UsuarioModel userModel = (UsuarioModel)Session["UserModel"];
Depois você pode passar via viewbag, viewdata.
- Marcado como Resposta welington jrModerator segunda-feira, 5 de março de 2018 11:22
-
No redirectToAction:
return RedirectToAction("Index", "Home", UserModel);
na Action Index dentro do controller Home:
public ActionResult Index(UsuarioModel userModel) { if(userModel==null){ userModel=new UsuarioModel; } return View(userModel) }
Na View Index:
@model UsuarioModel <h1>@Model.Nome</h1>
"just because you've abandoned your hopes of becoming a great thinker or scientist, don't give up on attaining freedom, achieving humility, serving others..." - 7.67 - Meditations - Marcus Aurelius
- Sugerido como Resposta Richof quinta-feira, 20 de fevereiro de 2014 23:03
- Marcado como Resposta welington jrModerator segunda-feira, 5 de março de 2018 11:22