Usuário com melhor resposta
ASP.NET MVC : Mensagens de alerta

Pergunta
-
Olá Desenvolvedores, bom dia !
Como exibir uma alerta/mensagem de usuário inexistente dentro do .cs, ou seja, no HomeController.cs ?
Eu não gostaria de criar uma nova View somente para exibir esta mensagem. Já tente com JavaScript mas,
esta dando erro......
Grato !!
[HttpPost] public ActionResult Index(logarPortal dadosUsuario) { if (ModelState.IsValid) { string vPcName = System.Net.Dns.GetHostName(); var contexto = new Contexto(); SqlDataReader dr = contexto.ExecutaComandoComRetorno("Select DesPastaProd,DesSenhaAcesso from tb_clientes where DesPastaProd='" + dadosUsuario.usuarioNome.Trim().ToUpper() + "'"); if (dr.Read()) { if (dr["DesSenhaAcesso"].ToString().Trim().ToUpper() == dadosUsuario.usuarioSenha.Trim().ToUpper()) { ViewBag.usuarioOnLine = dr["DesPastaProd"].ToString(); Session["usuariologado"] = dr["DesPastaProd"].ToString(); dr.Close(); return View("Index", dadosUsuario); } else { //aqui dentro da ActionResult, no HomeController.cs //abrir uma MessageBox *** mensagem de usuario inexistente! } } } return View("LogarPortal"); }
Gilberto Herminio Analista de Desenvolvimento de Sistemas Mogi das Cruzes-SP desenvolvedor.ti@r7.com / gil_haf@ig.com.br
- Movido welington jrModerator segunda-feira, 1 de maio de 2017 12:21 postado lugar errado
Respostas
-
Boa tarde,
Gilberto, existe inúmeras maneira de fazer isso. Precisa ver qual atende melhor sua necessidade:
1 - Incluir um atributo na sua classe "logarPortal", preencher este atributo e retornar a classe. Exemplo: Dentro da classe ter um atributo, "MensagemRetorno" assim você atribuiria a mensagem de usuário inexistente e retornava o objeto. Na "View" você verifica mostra a "MensagemRetorno".
2 - Fazer a requisição Ajax, você tem um controle legal do retorno.
3 - Adicionar uma mensagem na "ViewBag", retornar para sua "View" e verificar se a "ViewBag" está preenchida. Exemplo:
Controller
[HttpPost] public ActionResult Index(logarPortal dadosUsuario) { if (ModelState.IsValid) { string vPcName = System.Net.Dns.GetHostName(); var contexto = new Contexto(); SqlDataReader dr = contexto.ExecutaComandoComRetorno("Select DesPastaProd,DesSenhaAcesso from tb_clientes where DesPastaProd='" + dadosUsuario.usuarioNome.Trim().ToUpper() + "'"); if (dr.Read()) { if (dr["DesSenhaAcesso"].ToString().Trim().ToUpper() == dadosUsuario.usuarioSenha.Trim().ToUpper()) { ViewBag.usuarioOnLine = dr["DesPastaProd"].ToString(); Session["usuariologado"] = dr["DesPastaProd"].ToString(); dr.Close(); return View("Index", dadosUsuario); } else { //aqui dentro da ActionResult, no HomeController.cs ViewBag.Alerta = "Usuario inexistente"; } } } return View("LogarPortal"); }
View
@if (ViewBag.Alerta != string.Empty) { <script type="text/javascript"> alert('@ViewBag.Alerta'); </script> }
Observação: Este é apenas um exemplo e por este motivo utilizei o "alert" mesmo. Mas você pode utilizar o "Modal Dialog".
Espero ter ajudado
Att,
Se a resposta contribuiu com seu aprendizado por favor marque como util, se solucionou seu problema marque como resposta.
- Marcado como Resposta Marcos SJ segunda-feira, 25 de abril de 2016 16:52
Todas as Respostas
-
Boa tarde,
Gilberto, existe inúmeras maneira de fazer isso. Precisa ver qual atende melhor sua necessidade:
1 - Incluir um atributo na sua classe "logarPortal", preencher este atributo e retornar a classe. Exemplo: Dentro da classe ter um atributo, "MensagemRetorno" assim você atribuiria a mensagem de usuário inexistente e retornava o objeto. Na "View" você verifica mostra a "MensagemRetorno".
2 - Fazer a requisição Ajax, você tem um controle legal do retorno.
3 - Adicionar uma mensagem na "ViewBag", retornar para sua "View" e verificar se a "ViewBag" está preenchida. Exemplo:
Controller
[HttpPost] public ActionResult Index(logarPortal dadosUsuario) { if (ModelState.IsValid) { string vPcName = System.Net.Dns.GetHostName(); var contexto = new Contexto(); SqlDataReader dr = contexto.ExecutaComandoComRetorno("Select DesPastaProd,DesSenhaAcesso from tb_clientes where DesPastaProd='" + dadosUsuario.usuarioNome.Trim().ToUpper() + "'"); if (dr.Read()) { if (dr["DesSenhaAcesso"].ToString().Trim().ToUpper() == dadosUsuario.usuarioSenha.Trim().ToUpper()) { ViewBag.usuarioOnLine = dr["DesPastaProd"].ToString(); Session["usuariologado"] = dr["DesPastaProd"].ToString(); dr.Close(); return View("Index", dadosUsuario); } else { //aqui dentro da ActionResult, no HomeController.cs ViewBag.Alerta = "Usuario inexistente"; } } } return View("LogarPortal"); }
View
@if (ViewBag.Alerta != string.Empty) { <script type="text/javascript"> alert('@ViewBag.Alerta'); </script> }
Observação: Este é apenas um exemplo e por este motivo utilizei o "alert" mesmo. Mas você pode utilizar o "Modal Dialog".
Espero ter ajudado
Att,
Se a resposta contribuiu com seu aprendizado por favor marque como util, se solucionou seu problema marque como resposta.
- Marcado como Resposta Marcos SJ segunda-feira, 25 de abril de 2016 16:52
-
-
-