示例#1
0
 //Se define un método o propiedad static, la cual será el punto
 //central por donde se podrá recuperar una instancia de la clase
 //en este punto es donde se valida y crea la instancia de la
 //variable static definida mas arriba, es por esto que siempre se retorna esta misma instancia.
 public static VarGlo Instance()
 {
     if (variables == null)
     {
         variables = new VarGlo();
     }
     return(variables);
 }
        private void Login()
        {
            string user     = string.Empty;
            string password = string.Empty;

            user     = this.txtUsuario.Text.Trim();
            password = this.txtPassword.Text.Trim();

            try
            {
                var login = new DtoLoginRequest()
                {
                    Id       = 0,
                    Usuario  = user,
                    Password = password
                };

                var data = oUsuario.Login(login);

                if (string.IsNullOrEmpty(this.txtUsuario.Text))
                {
                    MessageBox.Show(null, "Ingrese usuario", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    this.txtUsuario.Focus();
                }
                else if (string.IsNullOrEmpty(this.txtPassword.Text))
                {
                    MessageBox.Show(null, "Ingrese contraseña", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    this.txtPassword.Focus();
                }
                else if (data == null)
                {
                    MessageBox.Show(null, "Usuario y/o contraseña incorrecta.", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    this.txtUsuario.Focus();
                }
                else if (data.Count == 0)
                {
                    MessageBox.Show(null, "Usuario y/o contraseña incorrecta.", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    //codigo para guardar el nombre en el appconfig
                    Properties.Settings.Default.Usuario = this.txtUsuario.Text;
                    Properties.Settings.Default.Check   = this.chkRecordarUsuario.Checked;
                    Properties.Settings.Default.Save();

                    //asigna el id del usuario a la variable global
                    VarGlo.Instance().CodUsuario = data.Id;

                    FrmPrincipal frm = new FrmPrincipal();
                    frm.Show();
                    this.Hide();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(null, "Ocurrio un error,Comuniquese con el administrador", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }