Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Actualités

  • Blog de Cyril DURAND, passionné de JavaScript, Ajax, ASP.net et tout ce qui touche au developpement Web Client-Side.

    View Cyril Durand's profile on LinkedIn

    hit counters

RegexStringValidator et propriété requise dans un élément de section de configuration personnalisé

Lorsqu'on créé une section de configuration personnalisé, .net permet de valider les entrées grâce aux attributs StringValidator et RegexStringValidator.

J'ai voulu utiliser l'attribut RegexStringValidator sur un élément de ma configuration afin de vérifier que l'entrée contenait un String "simple", j'ai donc écrit ce code :

public class IndexElement : ConfigurationElement { [RegexStringValidator(@"[\w\-\.]+")] [ConfigurationProperty("Name", IsKey = true, IsRequired = true)] public String Name { get { return (String)base["Name"]; } set { base["Name"] = value; } } }

Dans mon fichier de configuration, j'ai rajouté la ligne qui va bien, mais lorsque je charge la configuration j'obtiens cette erreur :

The value for the property 'Name' is not valid. The error is: The value does not conform to the validation regex string '[\w\-\.]+'.

Après quelques recherches, je me suis rendu compte que .net valide également la valeur par défaut, dans mon cas cette valeur vaut null ce qui ne valide pas l'expression régulière.

Pour corriger le problème, il faut renseigner une valeur par défaut, on peut le faire via l'attribut ConfigurationProperty.

[RegexStringValidator(@"[\w\-\.]+")] [ConfigurationProperty("Name", IsKey = true, IsRequired = true, DefaultValue="abc")] public String Name { get { return (String)base["Name"]; } set { base["Name"] = value; } }

La valeur par défaut importe peu, en effet si on ne renseigne pas la propriété, .net va retourner une exception puique nous avons marquer cette propriété comme "Required".

Posted: vendredi 6 juin 2008 00:18 par cyril
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

sebmafate a dit :

Bon à savoir... mais pas très facile à débugger !

# juin 6, 2008 09:13
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- La suite ...Proposition de collaboration rédactionnelle entre les communautés de développeurs et Microsoft France par LucasR le il y a 9 heures et 43 minutes

- [Fun] Votre simulateur de vol avec Microsoft ESP par Julien Chable le il y a 15 heures et 26 minutes

- [Best Practices] Customisation du My Site : Comment le modifier en amont et en aval par The Mit's Blog le il y a 16 heures et 40 minutes

- Patrick Tisseghem s'en est allé ... par The Mit's Blog le il y a 17 heures et 24 minutes

- MS AutoCollage par alex# le il y a 18 heures et 10 minutes

- Un grand SharePointeur nous a quitte : Patrick Tisseghem manquera à la communauté ! par RedoBlog - The .NET Gentleman !!! le il y a 18 heures et 35 minutes

- [WPF] Comment charger dynamiquement un fichier XAML qui définit des eventhandler ? par Thomas Lebrun le 09-04-2008, 10:56

- Article sur le filtrage des modèles de site SharePoint par The Grib's Lair [Sébastien PICAMELOT - MVP SharePoint] le 09-04-2008, 00:11

- Adopter votre Redo en 3D - Clone Virtuel - avec photosynth par RedoBlog - The .NET Gentleman !!! le 09-04-2008, 00:07

- [Expression Web] Astuce de la Semaine : Mettre en bouton ses macros dans une barre d'outils. par Expression Web & Me le 09-03-2008, 20:48