lunes, 28 de octubre de 2013

How to ... Cómo crear un formulario de autenticación en .NET

Continuamos con la serie de entradas relacionadas con .NET. (Puedes ver un resumen de todas las entradas relacionadas con .NET aquí). En la última entrada hicimos una SlashScreen o lo que es lo mismo, mostramos un mensaje de bienvenida mientras que se carga nuestra aplicación (podemos ver esta entrada aquí). Una vez que se muestra este mesaje vamos a mostrar un formulario donde recoger el login y password. Ese formulario será algo así:
A este formulario lo vamos a llamar Autenticacion.cs y si recordamos el fichero program.cs, será de la siguiente forma:


static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {

            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            SplashScreen sp = new SplashScreen();
            if (sp.ShowDialog() == DialogResult.OK)
            {
                Autenticacion auth = new Autenticacion();
              
                }
            }          
        }
    }
Podemos ver que lanzamos el SplashScreen y al cerrarse con el mensaje DialogResult.OK mostramos el formulario de autenticación. Lo que yo he realizado dentro del formulario de autenticación es algo similar, tengo la consulta a la base de datos que me trae la información del usuario y en el caso de que se autentique con éxito devuelvo lo siguiente:
label3.Text = "Usuario correcto";
this.DialogResult = DialogResult.OK;
this.Close();
Así lo que hago es devolver la ejecución a program.cs, tenemos entonces que modificar program.cs para dejarlo de esta forma:
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
SplashScreen sp = new SplashScreen();
if (sp.ShowDialog() == DialogResult.OK)
{
     Autenticacion auth = new Autenticacion();
     if(auth.ShowDialog() == DialogResult.OK){
             Application.Run(new Principal());
     }
}
Donde Principal es el MDI que nos va a soportar toda la funcionalidad de nuestra aplicación. De este modo, ya hemos completado un formulario de entrada a nuestra aplicación. No pongo aquí como gestionar los usuarios con la base de datos o cualquier otro mecanismo ya que este puede variar enormemente.
Espero que os sirva!

No hay comentarios :

Publicar un comentario