Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1212 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Validation des enums

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Validation des enums

n°1331350
cnstrnd
Posté le 23-03-2006 à 21:13:57  profilanswer
 

Salut,
Je viens de me coder une petite fonction pour valider un _enum_,
c'est a dire verifier que la valeur de la variable soit bien definie.
 

Code :
  1. class Validator
  2. {
  3.     /// <summary>
  4.     /// Ensure a value is defined in an enumeration.
  5.     /// </summary>
  6.     /// <exception cref="InvalidCastException"/>
  7.     public static void CheckEnum<TEnum>(TEnum value)
  8.     {
  9.         Type type = typeof(TEnum);
  10.         if (!System.Enum.IsDefined(type, value))
  11.         {
  12.             string message = string.Format("{0} is not defined in {1} enumeration", value, type);
  13.             throw new InvalidCastException(message);
  14.         }
  15.     }
  16.     //
  17.     // Exemple
  18.     //
  19.     enum Lol : byte
  20.     {
  21.         Rofl,
  22.         Ptdr,
  23.         Lmao
  24.     }
  25.     public void Main()
  26.     {
  27.         Lol lol = Lol.Rofl;
  28.         CheckEnum(lol); // Ok
  29.         lol = (Lol)5; // Ok, mais 5 n'est pas definie dans l'enum
  30.         CheckEnum(lol); // Balance un exception             
  31.     }
  32. }


Je me demandais s'il est possible d'automatiser la validation a chaque cast (avec un attribut ou autre) ?
 
Merci.

mood
Publicité
Posté le 23-03-2006 à 21:13:57  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Validation des enums

 

Sujets relatifs
validation CSS => AvertissementsProblème lors de la validation W3C
[HTML/CSS/Jevascript] Validation d'un site agréée Hache&Fervalidation formulaire en php avec Mysql
probleme de validation w3C CSS couleur de fondprobleme validation dtd
validation XHTMLValidation HTML 4.0.1 et BBcode
validation xhtmlValidation spécial en javascript
Plus de sujets relatifs à : Validation des enums


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR