public ActionResult Autenticar(string usuario, string senha, string tipo) { Session["tipoUsuario"] = tipo; Session["idUsuario"] = null; string strconexao = ConfigurationManager.ConnectionStrings["conexao"].ToString(); switch (tipo) { case "entidade": IEntidadeRepositorio repositorioEntidade = new EntidadeRepositorio(strconexao); EntidadeAplicacao aplicacaoEntidade = new EntidadeAplicacao(repositorioEntidade); EntidadeDTO entidade = aplicacaoEntidade.SelecionarTodos().Where(x => x.Usuario.ToUpper() == usuario.ToUpper()).FirstOrDefault(); if (entidade != null) { if (entidade.Senha.ToUpper() == senha.ToUpper()) { Session["idUsuario"] = entidade.Id; return(RedirectToAction("Index", "Entidade")); } else { return(RedirectToAction("ErroLogin", "Login")); } } else { return(RedirectToAction("ErroLogin", "Login")); } break; case "voluntario": IVoluntarioRepositorio repositorioVoluntario = new VoluntarioRepositorio(strconexao); VoluntarioAplicacao aplicacaoVoluntario = new VoluntarioAplicacao(repositorioVoluntario); VoluntarioDTO voluntario = aplicacaoVoluntario.SelecionarTodos().Where(x => x.Usuario.ToUpper() == usuario.ToUpper()).FirstOrDefault(); if (voluntario != null) { if (voluntario.Senha.ToUpper() == senha.ToUpper()) { Session["idUsuario"] = voluntario.Id; return(RedirectToAction("Index", "Voluntario")); } else { return(RedirectToAction("ErroLogin", "Login")); } } else { return(RedirectToAction("ErroLogin", "Login")); } break; default: return(RedirectToAction("ErroLogin", "Login")); break; } }