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 :

Tester si GetProperty().GetValue possède une valeur


Sujet :

C#

  1. #1
    Membre éclairé Avatar de maxeur
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    416
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 416
    Par défaut Tester si GetProperty().GetValue possède une valeur
    Bonjour à tous,

    Je suis en train d'essayer de récupérer une valeur à l'aide de la fonction GetProperty().GetValue() mais le soucis est que dans un cas la valeur est null et la fonction GetValue me soulève une exception.

    Comment puis je faire pour tester si ma propriété possède une valeur ??

    Voivi le code de ma fonction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    itemsField[i].GetType().GetProperty("comment").GetValue(itemsField[i], null).ToString()
    Dés que je rencontre la valeur null une exception est levée par cette ligne.

    Auriez vous une idéé de la manière dont je dois procéder ??

    J'ai essayé ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (itemsField[i].GetType().GetProperty("comment").GetValue(itemsField[i], null).ToString() != "")
    Mais toujours une exception.

    Merci d'avance pour vos réponses

  2. #2
    Membre Expert Avatar de sisqo60
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 754
    Par défaut
    je te mets des object partout mais si tu veux eviter des null reference exception et sécuriser ton code tu dois faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    string valeur;
    object itemfield = itemsField[i];
    if (itemfield != null)
    {
      Type type = itemfield.GetType();
      if (type != null)
      {
        propertyInfo pi = type.GetProperty("comment");
        if(pi != null)
        {
          object value = pi..GetValue(itemsField[i], null)
          if(value != null)
          {
            valeur = value.ToString();
            //Continue ton traitement...
          }
        }
      }
    }

  3. #3
    Membre éclairé Avatar de maxeur
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    416
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 416
    Par défaut
    Merci pour ta réponse

    Au début c'est ce que j'ai voulu faire mais le problème est que type.GetProperty("comment") est définie.

    lorsque je tape type.GetProperty("comment") je récupère une valeur. Le hic est aprés lorsque je veux faire un getvalue c'est la ou ca me lève une exception.

    J'avais pensé la même chose mais l'exception est toujours levée

  4. #4
    Membre éclairé Avatar de maxeur
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    416
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 416
    Par défaut
    j'ai fai une boulette

    L'erreur vient du fait que j'ai tester ma valeur en le castant en string et c'est là que l'exception à été levée

    Si je teste ma valeur pour savior si elle est null ca marche

    Merci

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

Discussions similaires

  1. tester si un $_POST[""] contient une valeur précise
    Par gastoncs dans le forum Langage
    Réponses: 9
    Dernier message: 22/07/2010, 12h09
  2. [MySQL] Tester si un champ a une valeur
    Par MarsVolta dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 13/02/2008, 08h45
  3. Tester si un combobox a une valeur nulle
    Par ludooo dans le forum VBA Access
    Réponses: 1
    Dernier message: 30/08/2007, 20h35
  4. Réponses: 1
    Dernier message: 13/02/2007, 09h54
  5. [XSLT] Tester la non présence d'une valeur dans un fichier
    Par arnauann dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/01/2007, 15h29

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