// Accesseur en lecture, renvoi une instance
 public static UtilisateurDAO GetunUtilisateurDAO()
 {
     if (unUtilisateurDAO == null)
     {
         unUtilisateurDAO = new UtilisateurDAO();
     }
     return(unUtilisateurDAO);
 }
        public static Utilisateur Requete(string utiLogin, string utiMpd,
                                          string utiDroit, SqlConnection maConnexion)
        {
            Utilisateur   utiConnecte = new Utilisateur(" ", " ", ' ');
            SqlCommand    myCommand   = default(SqlCommand);
            SqlDataReader myReader    = null;
            char          droit       = ' ';

            if (utiDroit == "administrateur")
            {
                droit = 'A';
            }
            if (utiDroit == "Comptable")
            {
                droit = 'C';
            }

            List <Utilisateur> listeUtilisateur;

            listeUtilisateur = UtilisateurDAO.GetUtilisateurs();
            int nbUtilisateur = listeUtilisateur.Count();

            for (int ind = 0; ind < nbUtilisateur; ind++)
            {
                if (utiLogin == listeUtilisateur[ind].Login &&
                    utiMpd == listeUtilisateur[ind].Mdp &&
                    droit == listeUtilisateur[ind].Droit)
                {
                    myCommand = new SqlCommand("SELECT login_user,mdp_user, " +
                                               "droit_user FROM Utilisateur WHERE login_user = @Login" +
                                               " AND mdp_user = @Password" +
                                               "AND droit_user = @Droit", maConnexion);

                    SqlParameter uLogin =
                        new SqlParameter("@Login", SqlDbType.VarChar);
                    SqlParameter uPassword =
                        new SqlParameter("@Password", SqlDbType.VarChar);
                    SqlParameter uDroit =
                        new SqlParameter("@Droit", SqlDbType.Char);

                    uLogin.Value    = utiLogin;
                    uPassword.Value = utiMpd;
                    uDroit.Value    = utiDroit;

                    myCommand.Parameters.Add(uLogin);
                    myCommand.Parameters.Add(uPassword);
                    myCommand.Parameters.Add(uDroit);

                    myCommand.Connection.Open();


                    myReader = myCommand.
                               ExecuteReader(CommandBehavior.CloseConnection);


                    if (myReader.Read() == true)
                    {
                        char utiDroitSelectionner;
                        utiDroitSelectionner = Convert.ToChar(utiDroit);
                        utiConnecte          = new Utilisateur(utiLogin, utiMpd, utiDroitSelectionner);
                    }
                    else
                    {
                        if (utiLogin != listeUtilisateur[ind].Login)
                        {
                            Console.WriteLine("Erreur, votre utilisateur " +
                                              " est incorrect ou n'existe pas");
                        }
                        if (utiMpd != listeUtilisateur[ind].Mdp)
                        {
                            Console.WriteLine("Erreur, votre mot de passe" +
                                              " est incorrect");
                        }
                        char utiDroitSelectionner;
                        utiDroitSelectionner = Convert.ToChar(utiDroit);
                        if (utiDroitSelectionner != listeUtilisateur[ind].Droit)
                        {
                            Console.WriteLine("Erreur, vous n'avez pas " +
                                              "selectionné le bon droit");
                        }
                    }
                }
            }
            return(utiConnecte);
        }