Meilleur auteur de réponses
Probleme avec string.IsNullorEmpty

Question
-
Bonjour,
string.IsNullOrEmpty est utilisé pour les types String.
Que faut il utiliser quand c'est de type int et datetime comme dans cette exemple
if (string.IsNullOrEmpty(patientToValidate.Age)) ou if (string.IsNullOrEmpty(patientToValidate.dateN))
Merci
Réponses
-
Bonjour,
Il faut utiliser ou soit || et pas ET && car si une des deux conditions n'est pas ok alors on redemande comme ceci:
if (string.IsNullOrEmpty(MailPatient) || !Regex.IsMatch(EmailPatient, @"^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$")) { //pas correct Console.WriteLine("veuillez recommencer"); } else { //ok Console.WriteLine("ok"); }
fred on youTube
PHP MySQL Web Site Creator
fred- Marqué comme réponse Fathiass dimanche 27 novembre 2011 20:39
Toutes les réponses
-
-
Bonjour,
int et DateTime sont des structures et ne peuvent donc prendre la valeur null.
Il faut que la properiété Age de votre objet soit de type Nullable<int> (int?) et que DateN soit de type Nullable<DateTime> (DateTime?) :
public int? Age { get; set; } public DateTime? DateN { get; set; }
Puis vos deux tests deviendraient :if (patientToValidate.Age.HasValue) if (patientToValidate.dateN.HasValue)
Pour plus d'information sur Nullable<T>, voirhttp://msdn.microsoft.com/fr-fr/library/b3h38hb0(v=vs.80).aspx#Y0
Cordialement.
- Modifié Ould MouradEditor lundi 21 novembre 2011 12:11
- Proposé comme réponse Ciprian Duduiala lundi 21 novembre 2011 12:41
-
Bonjour,
vous avez aussi la possibilité de passer par la méthode ToString comme ceci:
DateTime anniversaire = DateTime.Now; int unNombre = 1; if (string.IsNullOrEmpty(anniversaire.ToString())) { // valeur non assignée } else { //ok } if (string.IsNullOrEmpty(unNombre.ToString())) { // valeur non assignée } else { //ok }
fred on youTube
PHP MySQL Web Site Creator
fred -
Bonsoir,
Fred75, le if (string.IsNullOrEmpty(anniversaire.ToString())) marche bien mais que faire pour la gestion des expressions réguliéres
comme ceci
if(string.IsNullOrEmpty(patientToValidate.MailPatient))
&& !Regex.IsMatch(patientToValidate.EmailPatient, @"^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$"))
merci
-
Bonjour,
Il faut utiliser ou soit || et pas ET && car si une des deux conditions n'est pas ok alors on redemande comme ceci:
if (string.IsNullOrEmpty(MailPatient) || !Regex.IsMatch(EmailPatient, @"^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$")) { //pas correct Console.WriteLine("veuillez recommencer"); } else { //ok Console.WriteLine("ok"); }
fred on youTube
PHP MySQL Web Site Creator
fred- Marqué comme réponse Fathiass dimanche 27 novembre 2011 20:39
-
Bonjour,
Essayez ça:
if(string.IsNullOrEmpty(patientToValidate.MailPatient) || string.IsNullOrEmpty(patientToValidate.EmailPatient) || (!string.IsNullOrEmpty(patientToValidate.EmailPatient) && !Regex.IsMatch(patientToValidate.EmailPatient, @"^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$"))) { // ... }
Cordialement,
aelassas.free.fr
- Modifié Link.frEditor mercredi 23 novembre 2011 23:20 Formatage du code
-