public void Conexion_Terminar() { if(instancia_conexion!=null)//si la instancia de la conexion esta abierta, la cerramos y la apuntamos a null { instancia_conexion.conn.Close(); instancia_conexion = null; } }
private void cONECTARToolStripMenuItem_Click(object sender, EventArgs e) { conex = Conexion.Conexion_Obtener(); //this.cONECTARToolStripMenuItem.Enabled = false; //this.dESCONECTARToolStripMenuItem.Enabled = true; //this.lOGINToolStripMenuItem.Enabled = true; //this.oTRPRODUCTOToolStripMenuItem.Enabled = true; //this.pRODUCTOSToolStripMenuItem.Enabled = true; /* Por algun motivo, cuando la conexion no se logra con exito, se crea una instancia distinta de null * y al pasar por este evento, activa los controles. * Tendriamos que corregir que solo se activen cuando se consigue la conexion con exito * (por ejemplo corramos el programa si iniciar el servidor mysql, no se conseguira la conexion * pero se creará la instancia y se habilitaran los controles * */ }
private void btn_ingresar_Click(object sender, EventArgs e) { if (txb_password.Text.ToString().Length > 3 && txb_usuario.Text.ToString().Length > 3) { conexion = Conexion.Conexion_Obtener(); DataRow fila = conexion.Sesion_Iniciar(txb_usuario.Text, txb_password.Text); if (fila == null) { MessageBox.Show("usuario o contraseña incorrecta"); } else { MessageBox.Show("Bienvenido " + fila["nombres"]); //this.Dispose(); this.Close(); } } else MessageBox.Show("no se permiten campos vacíos ni menores de 4 caracteres"); }
public static Conexion Conexion_Obtener() //por singleton creamos la misma conexion o enviamos la misma. { if (instancia_conexion == null) instancia_conexion = new Conexion(); return instancia_conexion; }