Méthode de comparaison de deux utilisateurs

Résolu/Fermé
Nouvelle_Informaticienne Messages postés 153 Date d'inscription mercredi 20 avril 2016 Statut Membre Dernière intervention 20 décembre 2021 - 10 oct. 2018 à 12:55
 Utilisateur anonyme - 15 oct. 2018 à 13:40
Bonjour

je veux faire une methode simple pour le moment ( juste le debut ) qui compare deux utilisateurs

ma classe utilisateur est la suivante :


using System;
using System.ComponentModel.DataAnnotations;
 
namespace ProjetGestionTaches.Models
{
 
    class Utilisateur
    {
        public Utilisateur(int iD, string userName, string nom, string prenom)
        {
            ID = iD;
            UserName = userName;
            Nom = nom;
            Prenom = prenom;
        }
 
        public int ID { get; set; }
 
        [Required]
   
        public String UserName { get; set; }
 
        public String Nom { get; set; }
 
        public String Prenom { get; set; }
 
        public override string ToString()
 
        {return ID + " : " + UserName + " ( " + Nom + " , " + Prenom + " )";
        }
 
        public bool ComparerUtilisateur(Utilisateur user)
        {
            if (this.ID == user.ID)
            {
                Console.WriteLine("Les utilisateures " + this.Nom + " et " + user.Nom + " sont identiques");
                return true;
            }
 
                 
 
            else
            {
                Console.WriteLine("Les utilisateures " + this.Nom + " et " + user.Nom + " ne sont pas identiques");
                return false;
        }
        }
 
    }
 
}


et mon programme principal est la suivant :

using System;
using ProjetGestionTaches.Models;
 
namespace ProjetGectionTaches
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            Utilisateur user1 = new Utilisateur(1, "hajar1", "rachid1", "hajoura1");
            Utilisateur user2 = new Utilisateur(2, "hajar2", "rachid2", "hajoura2");
            bool resultat = user1.ComparerUtilisateur(user2);
            Console.WriteLine(resultat);
 
 
 
            Console.ReadKey();
        }
    }
}


c'est trop simple tous ca ;) je suis débutante en c# .

ma question est : pour la comparaison de deux utilisateurs, est ce que l'id est le bon critère de comparaison ?

je dis NON parce que pour la suite quand je crée une base de données j'aurai jamais des IDs identiques vu que l'id est auto incrémente normalement ? n'est ce pas ?

Est ce que je dois comparer ( nom, prénom, username) sans ID ?

sachant que la question n’étais pas détaillée :


Voici la Question : On souhaite pouvoir comparer deux utilisateurs entre eux.
Utilisez les spécificités du c# pour écrire une méthode permettant
de renvoyer vrai si les deux utilisateurs sont identiques et faux si ils sont différents.


Donc mon problème est plutôt au niveau "logique" et non pas au niveau technique ! car le code est simple et marche ! mais est ce que c un bon code ! bons pratiques !! à vous de me dire s'il vous plait

je vous remercie , bonne journée  :) 

1 réponse

Utilisateur anonyme
10 oct. 2018 à 13:07
Bonjour
je dis NON parce que pour la suite quand je crée une base de données j'aurai jamais des IDs identiques vu que l'id est auto incrémente normalement ? n'est ce pas ?

En fait ça dépend de pourquoi, tu veux comparer.

Si tu as un serveur sur un réseau (local ou internet) et un pc portable qui est tantôt connecté tantôt déconnecté, alors tu auras peut-être besoin de comparer par les ID pour synchroniser les 2 bdd.

Si à l'inverse, l'idée est de fusionner 2 sources, alors tu dois comparer le nom, le prénom, la date et le lieu de naissance, mais ça peut ne pas suffire, on a déjà vu un fait divers où le suspect avait un homonyme, né le même jour dans la même ville, et c'est l'homonyme qui avait été arrêté.

S'agissant d'un exercice, avec l'ID tu réponds à la question telle qu'elle est posée, à mon humble avis.
1
Je te remercie Whismeril , exactement puisque il y a pas de détails ! je fais comme je le vois et j'expliquerai si nécessaire
merci encore
0
Utilisateur anonyme
15 oct. 2018 à 13:40
De rien
0