2011-04-19 2 views
1

Je suis nouveau sur C# MVC et j'essaie d'ajouter des contrôles de validation dynamiques à mes modèles de vue utilisés dans un formulaire. Par exemple, j'ai une propriété de chaîne appelée FirstName. Je peux ajouter l'attribut StringLength (10) et Required().Afficher les propriétés du modèle a des règles de validation qui changent au moment de l'exécution

Mon problème est, en fonction d'un autre champ, le FirstName StringLength pourrait varier de 10 à 20, etc. Je veux toujours utiliser les validations MVC mais être capable de le modifier. Je sais que les attributs sont liés à la classe alors peut-être que j'utilise la mauvaise chose.

Je veux les capacités pour la validation d'attribut mais la rendre modifiable à l'exécution. Est-ce possible?

Répondre

1

Les valeurs d'un attribut doivent être des littéraux. Vous pouvez toujours utiliser la validation basée sur les attributs, mais vous devrez utiliser la balise CustomValidation et pointer vers une méthode à utiliser. Si cela dépend de plusieurs champs dans l'objet, vous voudrez mettre ceci sur la classe plutôt que sur la propriété.

+0

Merci. Cela m'a conduit à comprendre comment trouver une solution à mon problème. – kailoon

Questions connexes