Hola, que tal, bueno yo solia programar en Visual Basic 6.0 y ahora estoy
aprendiendo C#, y deseo crear un formulario simple para validar login, hice
mi clase y bueno tambien les paso el codigo del formulario, por si me pueden
ayudar, la base de datos esta hecha en Access
namespace Login
{
class clsUsuario
{
BaseDatos objDB = new BaseDatos();
public int Obtener_IdUsuario(string strUsuario)
{
int IdUsuario=0;
string strSQL;
strSQL = "SELECT Id_Usuario FROM Usuario WHERE Usuario='" +
strUsuario + "'";
/*Parte referente a la conexión y configuración para la
ejecución*/
OleDbConnection conn = (OleDbConnection)objDB.conn;
conn.Open();
OleDbCommand comando = new OleDbCommand(strSQL, conn);
OleDbDataReader odr = comando.ExecuteReader();
return IdUsuario;
}
public string Obtener_Usuario(int IdUsuario)
{
string Usuario=null;
string strSQL1;
strSQL1 = "SELECT Usuario.IdUsuario, Usuario.Nombre,
Usuario.Usuario, Usuario.Id_TipoUsuario, Tipo_Usuario.Nombre"+
"FROM Tipo_Usuario INNER JOIN Usuario ON
Tipo_Usuario.Id_TipoUsuario=Usuario.Id_TipoUsuario"+
"WHERE Usuario.IdUsuario='" + IdUsuario + "'";
OleDbConnection conn = (OleDbConnection)objDB.conn;
conn.Open();
OleDbCommand comando = new OleDbCommand(strSQL1, conn);
OleDbDataReader odr = comando.ExecuteReader();
return Usuario;
}
}
}
/********************Codigo del formulario para el login
***************************/
namespace TestConexion1
{
public partial class frmInicio : Form
{
public frmInicio()
{
InitializeComponent();
}
private void btnAceptar(object sender, EventArgs e)
{
if (txtUsuario.Text != "" || txtUsuario.Text != "0")
{
if (txtContrasena.Text != "")
{
OleDbDataReader odrId = null;
/*Obtener Id del Usuario*/
clsUsuario objUsuario = new clsUsuario();
string Usuario = this.txtUsuario.Text.Trim();
string Contrasena = this.txtContrasena.Text.Trim();
odrId = objUsuario.Obtener_IdUsuario(Usuario); //No se
puede convertir implicitamente el tipo int a
//System.Data.OledbDataReader
if (odrId.Read())
{
MessageBox.Show("El Usuario no existe");
txtUsuario.Text = "";
txtContrasena.Text = "";
}
else
{
int IdUsuario = (int)odrId[0];
/*Obtener Usuario*/
OleDbDataReader odrUsu = null;
odrUsu = objUsuario.Obtener_Usuario(IdUsuario); //No
se puede convertir implicitamente el tipo string a
//System.Data.OledbDataReader
if (odrUsu.Read() = Contrasena) //como Cotejo la
contraseña??
{
MessageBox.Show("Bienvenido al Sistema");
}
else
{
MessageBox.Show("La contraseña no corresponde al
Usuario");
txtContrasena.Text = "";
}
}
}
else
{
MessageBox.Show("Debe Ingresar la Contraseña");
}
}
else
{
MessageBox.Show("Debe Ingresar el nombre del Usuario");
}
}
private void btnCancelar_Click(object sender, EventArgs e)
{
Application.Exit();
}
}
}
Una pregunta adicional, El ADODB.Recordset del Visual Basic 6.0, cual seria
su equivalente para el C#??, y como usarlo para validar la contraseña, es que
nose bien como comparar que la contraseña que se ingresa es la misma de la
base de datos.
Leer las respuestas