Comment optimiser ces conditions IF

Comment optimiser ces conditions IF - C#/.NET managed - Programmation

Marsh Posté le 17-05-2023 à 14:37:17    

Salut a tous,
 
J'ai un DataGridView qui reçoit et affiche des identifiants (ID) d'une source externe. Je connais les pseudos de chaque ID.
 
Dans la colonne "ID", comment feriez vous d'une manière optimiser pour verifier a quel pseudo correspond l'ID de la celulle 0  
 
Voici un exemple de ce que j'ai fais (voir ci-dessous) qui fonctionne bien mais les conditions IF sont trop longues car il y a prés de 200 ID avec leurs pseudos.
 
Connaissez vous svp un moyen plus optimiser comme par exemple une boucle qui vérifie une liste qui contient tous les pseudos des menbres ? j'espere que vous avez compris ce que je veux dire ;)
 

Code :
  1. string id = row.Cells[0].Value.ToString();
  2. var nom = "";
  3. if (id == "FB23E1A8B7E2944FAAEC6219BBDF8243" )
  4. {
  5.   nom = "Pseudo 1";
  6. }
  7. else if (id == "FE63D6040E22611D978B73064B3A2057" )
  8. {
  9.   nom = "Pseudo 2";
  10. }
  11. else if (id == "0D44A8E3F29D9E568FE31C7DE45A80E0" )
  12. {
  13.   nom = "Pseudo 3";
  14. }


 
Merci

Reply

Marsh Posté le 17-05-2023 à 14:37:17   

Reply

Marsh Posté le 17-05-2023 à 16:55:06    

Tu n'as pas une base de données d'associée à ton projet ?  
Ca sert un peu à ça, associer des données entre elles...


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Marsh Posté le 17-05-2023 à 23:58:57    

Merci mais désolé j'ai pas compris..

Reply

Marsh Posté le 18-05-2023 à 23:33:07    

Je pense que ça implique qu'il faut que tu ailles voir ce que c'est qu'une base de données...


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Marsh Posté le 19-05-2023 à 08:04:50    

Reply

Marsh Posté le 19-05-2023 à 08:15:24    

Si il veut une solution entièrement dans le code, un dictionnaire est effectivement une bonne approche.
Mais vu la nature des données stockées ça paraît très crade d'avoir ça dans le code, donc autant citer d'abord la solution propre et parler du reste après.
En intermédiaire on aurait aussi pu citer un fichier plat, genre json, XML, csv...


Message édité par TotalRecall le 19-05-2023 à 08:15:50

---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Marsh Posté le 20-05-2023 à 12:44:49    

Code :
  1. string id = row.Cells[0].Value.ToString();
  2. var names = new Dictionary<String, String>();
  3. names.Add("FB23E1A8B7E2944FAAEC6219BBDF8243", "Pseudo 1" );
  4. names.Add("FE63D6040E22611D978B73064B3A2057", "Pseudo 2" );
  5. names.Add("0D44A8E3F29D9E568FE31C7DE45A80E0", "Pseudo 3" );
  6.  
  7. var nom = names[id];


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed