[ Foro de C# ]
el trabajo es un login , tengo 3 usuarios cada uno con diferentes contraseñas lo unico que me falta es poner 3 intentos y si es que me paso de los 3 se cierre el programa MI CODIGO QUE avanse es este :
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace _18_05_Practica { public partial class Form1 : Form { public Form1() { InitializeComponent(); } string Usuario; string Password; private void btIngresar_Click(object sender, EventArgs e) { Usuario = cmbUsuario.Text; Password = textBox1.Text; string Usu = "Admin"; string Pass = "1234"; if (Usuario == Usu && Password == Pass) MessageBox.Show("Bienvenido al Sistema", "Planillas", MessageBoxButtons.OKCancel Usuario = cmbUsuario.Text; Password = textBox1.Text; string Usua = "Usu01"; string Passa = "4321"; if (Usuario == Usua && Password == Passa) MessageBox.Show("Bienvenido al Sistema", "Planillas", MessageBoxButtons.OKCancel); else { Usuario = cmbUsuario.Text; Password = textBox1.Text; string Usue = "Usu02"; string Passe = "5678"; { if (Usuario == Usue && Password == Passe) { MessageBox.Show("Bienvenido al Sistema", "Planillas", MessageBoxButtons.OKCancel); } } } } } }
Para que haya (como máximo) 3 intentos, necesitarás un contador e incluir la petición de datos dentro de un "do-while", que haga que ésta se repita mientras no se acierte y no se agoten los intentos.
Hola lo puedes ir validando por medio de if te recomiendo que lo hagas de la siguiente manera
if (!this.txtusuario.Text.Trim().Equals(String.Empty) && !this.txtContraseña.Text.Trim().Equals(String.Empty))
{
//if (ws.ValidarLogin(this.txtusuario.Text.ToString(), this.txtContraseña.Text.ToString()))
//if (wsd.ValidacionUSuarios(this.txtusuario.Text.ToString(), this.txtContraseña.Text.ToString()))
registrousuariio = dbuser.GetTable<RegistroUsuario>().FirstOrDefault(c => c.Usuario.Equals(this.txtusuario.Text.Trim()) && c.Contraseña.Equals(this.txtContraseña.Text.Trim()));
if (registrousuariio != null)
{
int perfil = int.Parse(registrousuariio.idPerfil.ToString());
PantallaPrincipal principal = new PantallaPrincipal(perfil);
principal.Show();
this.Hide();
}
else
{
if (wsds.ValidarUsuario(this.txtusuario.Text.ToString(), this.txtContraseña.Text.ToString()))
{
int perfil = 6;
//= int.Parse(registrousuariio.idPerfil.ToString());
PantallaPrincipal principal = new PantallaPrincipal(perfil);
principal.Show();
this.Hide();
}
}
Espero y te sirva saludos
Hola lo puedes ir haciendo en la forma que lo estas haciendo te recomiendo hacerlo de la siguiente manera
if (!this.txtusuario.Text.Trim().Equals(String.Empty) && !this.txtContraseña.Text.Trim().Equals(String.Empty))
{
this.txtContraseña.Text.ToString()))
registrousuariio = dbuser.GetTable<RegistroUsuario>().FirstOrDefault(c => c.Usuario.Equals(this.txtusuario.Text.Trim()) && c.Contraseña.Equals(this.txtContraseña.Text.Trim()));
if (registrousuariio != null)
{
int perfil = int.Parse(registrousuariio.idPerfil.ToString());
PantallaPrincipal principal = new PantallaPrincipal(perfil);
principal.Show();
this.Hide();
}
else
{
if (wsds.ValidarUsuario(this.txtusuario.Text.ToString(), this.txtContraseña.Text.ToString()))
{
int perfil = 6;
//= int.Parse(registrousuariio.idPerfil.ToString());
PantallaPrincipal principal = new PantallaPrincipal(perfil);
principal.Show();
this.Hide();
}
}
Espero te sirva saludos
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)