Bonjours a tous,

Je me retrouve fréquemment avec des erreurs dans mes fonctions utilisant des paramètre de type string.

Par exemple :

Cas n°1 : j'utilise dans mon if la valeur guillemet vide pour tester la nullité :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
public static List<Secteur> ListerSecteur(string conditionColonne, string valueCondition, string conditionRecherche, string valueRecherche, string orderby)
        {
            string requete = "";
            if (valueCondition !=  "" && conditionRecherche == "")
            {
                requete = "SELECT * FROM secteur WHERE " + conditionColonne + " = " + valueCondition + " ORDER BY " + orderby;
            }
Cas n° 2 : test de nullité avec la valeur NULL
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
  public static List<Secteur> ListerSecteur(string conditionColonne, string valueCondition, string conditionRecherche, string valueRecherche, string orderby)
        {
            string requete = "";
            if (valueCondition != null && conditionRecherche == null )
            {
                requete = "SELECT * FROM secteur WHERE " + conditionColonne + " = " + valueCondition + " ORDER BY " + orderby;
            }
Cas n° 3 = test de nullité avec string.empty

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
  public static List<Secteur> ListerSecteur(string conditionColonne, string valueCondition, string conditionRecherche, string valueRecherche, string orderby)
        {
            string requete = "";
            if (valueCondition != string.Empty && conditionRecherche == string.Empty)
            {
                requete = "SELECT * FROM secteur WHERE " + conditionColonne + " = " + valueCondition + " ORDER BY " + orderby;
            }
Mais je ne comprend pas trop quel sont les différence a ces trois "valeur" de type string et surtout dans quel cas les utiliser.

Merci a vous pour votre aide et vos conseil.