IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Test d'une variable type string vide


Sujet :

C#

  1. #1
    Membre habitué
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2011
    Messages
    255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 255
    Points : 193
    Points
    193
    Par défaut Test d'une variable type string vide
    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.
    Life myLife = new Life ("eat","sleep","code");

  2. #2
    Invité
    Invité(e)
    Par défaut
    utilie la Methode

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String.IsNullOrEmpty (Machaine);

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2011
    Messages
    255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 255
    Points : 193
    Points
    193
    Par défaut
    Merci gcorbineau pour ta réponse rapide,

    Tu me conseil d'utiliser a chaque fois cette méthode ou juste dans des cas particulier ?

    Cette méthode teste donc la valeur null ainsi que la valeur vide ?
    Life myLife = new Life ("eat","sleep","code");

  4. #4
    Invité
    Invité(e)
    Par défaut
    cette methode test si la valeur est null ou si la valeur est vide (String.Empty)

    Je te conseil de l'utiliser partout où cela pose probleme si ta valeur est vide ou null

  5. #5
    Membre habitué
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2011
    Messages
    255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 255
    Points : 193
    Points
    193
    Par défaut
    Merci gcorbineau ça marche parfaitement maintenant.

    Toujours bon à connaitre le String.IsNullOrEmpty

    Life myLife = new Life ("eat","sleep","code");

  6. #6
    Membre éprouvé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2011
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2011
    Messages : 487
    Points : 945
    Points
    945
    Par défaut
    Hello,

    Attention à ne pas confondre ! Il y a deux cas très différents :

    Cas numéro 1 : s == null

    Cela veut dire que s ne référence aucun objet et "pointe dans le vide".


    Cas numéro 2 : s est vide

    Dans ce cas la, s possède une référence vers un objet string qui est instancié, et dont la valeur est "chaine vide". string.Empty retourne "", donc les deux sont équivalents.


    Egalement à savoir, la classe String propose une autre méthode statique .IsNullOrWhitespace() qui retourne true si ta chaîne ne contient que des espaces.
    Mon blog sur les technos .NET et Agile -> http://blog.developpez.com/maximepalmisano/

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. passer une variable type string en clé d'un array
    Par Parmenion dans le forum Langage
    Réponses: 3
    Dernier message: 24/09/2012, 14h40
  2. Détecter si une variable Integer est vide..
    Par mickael.be dans le forum Langage
    Réponses: 4
    Dernier message: 19/02/2006, 10h34
  3. [Mail] Construire un test avec une variable
    Par jeromesco dans le forum Langage
    Réponses: 3
    Dernier message: 17/02/2006, 21h52
  4. [xsl] Test avec une variable ?
    Par maxonman dans le forum XSL/XSLT/XPATH
    Réponses: 8
    Dernier message: 24/01/2006, 10h47
  5. DEBUTANT Lire dans une variable type CString
    Par Hokagge dans le forum MFC
    Réponses: 2
    Dernier message: 01/12/2005, 10h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo