C# LOGIN CON FORMULARIO WINDOWS C# + SQL SERVER / CAPAS
Hola que tal, en esta ocasión vengo a traer el código fuente sobre Login usando el lenguaje de programación C#, Base de Datos SQL SERVER formularios windows en Visual Studio.
La base de datos tendra lo siguiente:
El modelo de capas sera el siguiente:
Crearemos 3 Bibliotecas de clases: CapaDatos, CapaEntidad, CapaReglas. 4 Clases: CDTrabajador, Conexion, CETrabajador, CRTrabajador. No olvidar las referencias
Clase Conexion:
Usaremos 4 Label (Login, label4, Usuario, Password), 2 TextBox(TxtUsuario, TxtPassword), 2 Button (BtnIngresar, BtnSalir), 1 Timer y opcional 1 PictureBox
Código del Formulario:
La base de datos tendra lo siguiente:
CREATE DATABASE LoginSql GO USE LoginSql GO CREATE TABLE TRABAJADOR( DNI CHAR(8) PRIMARY KEY, Acceso varchar(20) NOT NULL, Usuario varchar(20) NOT NULL, Password varchar(20) NOT NULL, ) GO --insertar trabajadores insert into TRABAJADOR values('70247826','Administrador','admin','admin') insert into TRABAJADOR values('70247145','Vendedor','vende','vende') select * from TRABAJADOR GO --Procedimiento almacenado Login Trabajador create proc spu_login_Trabajador @Usuario varchar(20), @Password varchar(20) as select DNI,Acceso from TRABAJADOR where Usuario=@Usuario and Password=(select Password from TRABAJADOR where Usuario=@Usuario) GOCrearemos un proyecto C# Windows Forms en mi caso de nombre le puse login.
El modelo de capas sera el siguiente:
Crearemos 3 Bibliotecas de clases: CapaDatos, CapaEntidad, CapaReglas. 4 Clases: CDTrabajador, Conexion, CETrabajador, CRTrabajador. No olvidar las referencias
Clase Conexion:
public class Conexion
{
string cadena = "Data Source=.;Initial Catalog=LoginSql; user=sa; password=sql2014;Integrated Security=false";
public SqlConnection conexionDB = new SqlConnection();
public Conexion()
{
conexionDB.ConnectionString = cadena;
}
public string abrirDB()
{
string valor = "";
try
{
conexionDB.Open();
}
catch (Exception e)
{
valor = e.Message;
}
return valor;
}
public void cerrarDB()
{
conexionDB.Close();
}
}
Clase CETrabajador:public class CETrabajador
{ String dni;
String acceso;
String usuario;
String password;
public String DNI { set; get; }
public String Acceso { get; set; }
public String Usuario { get; set; }
public String Password { get; set; }
public CETrabajador()
{}
public CETrabajador(string dni, string acceso, string usuario, string password)
{ this.dni = dni;
this.acceso = acceso;
this.usuario = usuario;
this.password = password;
}
}
Clase CDTrabajador:public class CDTrabajador
{
CETrabajador t = new CETrabajador();
Conexion cx = new Conexion();
public DataTable Login(CETrabajador Trabajador)
{
DataTable DtResultado = new DataTable("TRABAJADOR");
try
{
SqlCommand cmd = new SqlCommand("dbo.spu_login_Trabajador", cx.conexionDB);
cmd.CommandText = "dbo.spu_login_Trabajador";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@Usuario", SqlDbType.VarChar, 20);
cmd.Parameters["@Usuario"].Value = Trabajador.Usuario;
cmd.Parameters.Add("@Password", SqlDbType.VarChar, 20);
cmd.Parameters["@Password"].Value = Trabajador.Password;
cmd.Connection.Open();
cmd.ExecuteNonQuery();
SqlDataAdapter sqldat = new SqlDataAdapter(cmd);
sqldat.Fill(DtResultado);
}
catch (Exception ex)
{
DtResultado = null;
}
return DtResultado;
}
}
Clase CRTrabajador:public class CRTrabajador
{
public static DataTable Login(string usuario, string password)
{
CDTrabajador tdi = new CDTrabajador();
CETrabajador obj = new CETrabajador();
obj.Usuario = usuario;
obj.Password = password;
return tdi.Login(obj);
}
}
El formulario sera el siguiente:Usaremos 4 Label (Login, label4, Usuario, Password), 2 TextBox(TxtUsuario, TxtPassword), 2 Button (BtnIngresar, BtnSalir), 1 Timer y opcional 1 PictureBox
Código del Formulario:
public partial class Login : Form { public Login() { InitializeComponent(); LblHora.Text = DateTime.Now.ToString(); } private void BtnIngresar_Click(object sender, EventArgs e) { //DataTable almacena filas y columnas de datos DataTable Datos = CapaReglas.CRTrabajador.Login(this.TxtUsuario.Text, this.TxtPassword.Text); //Evaluar si existe el Usuario rows 'filas' count contador if (Datos.Rows.Count == 0) { MessageBox.Show("No Tiene Acceso al Sistema", "Aplicación Login", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { MessageBox.Show("Bienvenido al Sistema", "Aplicación Login", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } private void BtnSalir_Click(object sender, EventArgs e) { Application.Exit(); } private void Timer1_Tick(object sender, EventArgs e) { LblHora.Text = DateTime.Now.ToString(); } }
Comentarios
Publicar un comentario