Connexion à une base de données

Signaler
Messages postés
21
Date d'inscription
vendredi 14 mars 2008
Statut
Membre
Dernière intervention
2 octobre 2012
-
Messages postés
21
Date d'inscription
vendredi 14 mars 2008
Statut
Membre
Dernière intervention
2 octobre 2012
-
Bonjour à tous

je suis entrain de réaliser une application WPF sous Visual Studio 2010 mais je ne suis pas doué en ce qui concerne les bases de données

j'ai lié une base de données au projet créée dans le projet DataBase (add new item -> Ado.net entity data model -> ...), j'ai nommé bref j'ai maintenant le fichier .edmx avec le schéma correspond à mes tables et les méthodes générées automatiquement => bref, l'ajout s'est bien effectué

le connectionString :
<connectionStrings>
    
  </connectionStrings>

là où j'ai un problème, c'est au moment de créer une requête car je ne sais pas comment faire ...

j'appelle une méthode qui reçoit un login et un mot de passe et qui me renvoie un boolean si l'utilisateur est enregistré dans la base de données ou non
BD : table Utilisateur avec login (clé primaire), motDePasse

public Boolean verifConnexion(String login, String motDePasse)
{
List utilisateurs = new List();
DataBase.ProjetEntities db = new DataBase.ProjetEntities();
            
try
{
      // obtient l'enregistrement ou pas où le login et le mot de passe correspond à ce qui a été rentré
      // Ne sais pas si c'est vraiment correct
      var query from u in db.Utilisateurs where u.Login login && u.MotDePasse == motDePasse select u;
     utilisateurs.AddRange(query);
}
catch(Exception e) 
{
     Console.WriteLine(e.Message);
}

// Boucle sur la liste d'utilisateur pour voir s'il y a un utilisateur enregistré avec ces valeurs
     int i = 0;
     foreach (Utilisateur u in utilisateurs)
     {
          i++;
     }

     if (i == 0)
         return false;
     else
         return true;
}



voilà, donc si quelqu'un pouvait m'aider à comprendre comment faire une requete

1 réponse

Messages postés
21
Date d'inscription
vendredi 14 mars 2008
Statut
Membre
Dernière intervention
2 octobre 2012

voilà, une réponse que j'ai eue :




Bonjour,

pour ton problème, à mon sens, tu peux utiliser where avec un prédicat. de cette facon tu gardes les choses simples. Voici un bout de code qui peut faire l'affaire:
Code :

bool trouve = true;
var ResultatRecherche db.Utilisateurs.Where(u> u.Login == tonLogin && u.PassWord == tonPassword);
//tu testes par la suite le résultat de ta recherche : si le ResultatRecherche est null donc l'utilisateur avec le login et mot de passe n'est pas trouvé sinon il y est.
if(ResultatRecherche==null)
trouve=false;

return trouve;

comme tu peux voir sur le code, le where contient un prédicat, ce qui veut dire que ne seront retournés que les entités qui satisfont la condition qui est traduite par la valeur "true" du prédicat.