none
El nombre 'LoginService' no existe en el contexto actual_- validacion de usuario

    Question

  • Amigos estoy aprendiendo a introducir un usuario y un password con c# y access, despues de buscar muchos ejemplos encontre uno de Leandro que parece bueno pero no me abre el codigo fuente del blog porque dice que mi version es mas vieja.

    por todo lo mencionado he copiado y tratado de adecuar el codigo pero me manda el error:

     

    El nombre 'LoginService' no existe en el contexto actual

    y

    Error    1    Se requiere una referencia a objeto para el campo, método o propiedad no estáticos 'validacion_de_usuario.Form1.CONEXION'

     

    DEJO EN NEGRITA EL ERROR MARCADO EN EL CODIGO PARA QUE LO DETECTEN MAS RAPIDO.

     

    en el codigo de ejemplo se implementa un sistema de seguridad Hash pero yo no lo necesito por lo cual lo he quitado y todo esto me distorciona el codigo, soy INESPERTO ESTOY APRENDIENDO.

    MI TABLA SE LLAMA TablaValidar tiene dos campos (Usuario, Password)

     

    CODIGO DEL ERROR:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.Data.OleDb;

    namespace validacion_de_usuario
    {
        public partial class Form1 : Form
        {
            //Declaramos la variable de conexion

            OleDbConnection CONEXION;


            public Form1()
            {
                //Agregamos la cadena de conexion a la base de datos

                CONEXION = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Humberto\Documents\planilla.mdb");

                InitializeComponent();

            }

            public static bool CONSULTAR(string usuario, string password)
            {
               
                string va = @"SELECT COUNT(*)FROM TablaValidar WHERE Usuario = @usuario AND Password = @password";

                OleDbCommand COMANDO = new OleDbCommand(va, CONEXION);



                COMANDO.Parameters.Add(new OleDbParameter("@usuario", OleDbType.VarChar));
                COMANDO.Parameters["@usuario"].Value = usuario;

                COMANDO.Parameters.Add(new OleDbParameter("@password", OleDbType.VarChar));
                COMANDO.Parameters["@password"].Value = password;


                if (password != "" )
                {
                    return false;
                }
                else
                {
                    return true;
                }
            }



            private void Form1_Load(object sender, EventArgs e)
            {

            }

            private void btnEntrar_Click(object sender, EventArgs e)
            {

                string usuario = txtUsuario.Text;
                string password = txtPassword.Text;
               
                if (LoginService(usuario, password))

                this.DialogResult = DialogResult.OK;
                else
                this.DialogResult = DialogResult.Abort;

            }
        }
    }

     

     


    Humberto Martinez
    Tuesday, January 31, 2012 8:36 PM

Answers

  • la defino en el app.config

    no se deberia poner la cadena de conexion fija en el codigo

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marked as answer by hum_marti Thursday, February 09, 2012 4:41 PM
    Wednesday, February 01, 2012 7:20 PM

All replies

  • pero ese metodo LoginService() donde esta codificado ?

    porque alli solo veo el metodo CONSULTAR() que toma un usuario y password

    pero no se ve el LoginService()

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Tuesday, January 31, 2012 8:44 PM
  • Leandro amigo exactamente es lo que no veo en el codigo que usted proporciono donde esta ese metodo creado, soy muy inesperto pensaba que era alguna palabra reservada para algo.

    este es el link del blog suyo: http://ltuttini.blogspot.com/2010/05/login-usando-password-con-hash.html

     

    pero su visual studio es mas avanzado que el mio que es 2005 y no puedo ver su codigo. he buscado de donde salio el login.service y no lo veo.


     


    Humberto Martinez
    Tuesday, January 31, 2012 8:58 PM
  • ahh ok

    es que si revisas el ejemplo use

    if (LoginService.Autenticar(nombre, password))

    ese es una clase no un metodo

     verias que si en el codigo buscas LoginService es una clase que define un metodo Autenticar que usa "static", por lo tanto no se requiere instancia para poder usarlo

    pero no tu lo has realziado no es lo mismo, alli defines directo como un metodo

     

    busca en el codigo del ejemplo LoginServicey veras que es una clase

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Tuesday, January 31, 2012 9:09 PM
  • leandro lo que no veo es donde haces la conexion a la base de datos estoy acostumbrado a ver la conexion pero donde la pusistes:

    ejemplo yo puse esto

    CONEXION = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Humberto\Documents\planilla.mdb");

     

    pero no veo la tuya, esta en otro archivo?

     

     


    Humberto Martinez
    Wednesday, February 01, 2012 6:33 PM
  • mira yo lo estoy haciendo desde una base de datos de access y sin hash podrias mostrarme un ejemplo de codigo sencillo, no necesito tanto y pienso que me enreda mas asi.

    tienes algun ejemplo sencillo de conexion para access, o que debo cambiar de mi codigo?


    Humberto Martinez
    Wednesday, February 01, 2012 6:36 PM
  • la defino en el app.config

    no se deberia poner la cadena de conexion fija en el codigo

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    • Marked as answer by hum_marti Thursday, February 09, 2012 4:41 PM
    Wednesday, February 01, 2012 7:20 PM
  • amigo que cambios debo hacer para que este codigo suyo me funcione en access lo intente y tengo muchos errores.

    que debo cambiar y como se escribiria para access?


    Humberto Martinez
    Wednesday, February 01, 2012 7:41 PM