comment mettre DisplayName sur ErrorMessage format

J'ai quelque chose comme ceci:

    [DisplayName("First Name")]
    [Required(ErrorMessage="{0} is required.")]
    [StringLength(50, MinimumLength = 10, ErrorMessage="{0}'s length should be between {2} and {1}.")]
    public string Name { get; set; }

Je veux avoir le résultat suivant:

  • Prénom est obligatoire.
  • Première du Nom, la longueur doit être comprise entre 10 et 50.

Il est de travail lors de l'utilisation de ASP.NET MVC2 Erreur Résumé, mais lorsque je tente de valider manuellement, comme ceci:

        ValidationContext context = new ValidationContext(myModel, null, null);
        List<ValidationResult> results = new List<ValidationResult>();
        bool valid = Validator.TryValidateObject(myModel, context, results, true);

Les résultats sont les suivants:

  • Nom est requis.
  • Nom, la longueur doit être comprise entre 10 et 50.

Quel est le problème? Merci.

  • Je semble avoir le même problème que l'OP. Dans la main, soit à l'aide de [Affichage] ou [Affichage] sur la propriété fonctionne correctement (remplacer {0} dans l'attribut obligatoire de message d'erreur avec le nom d'affichage), cependant, j'ai découvert que les erreurs de modèle de sortie par le côté serveur de validation peut être incorrecte (remplacer {0} avec le nom de la Propriété) - même si discrète de validation donne la valeur correcte pour la même propriété. (Pour voir ce que j'avais de désactiver javascript). Je n'ai pas encore été en mesure d'obtenir au fond de ce observée avec MVC 5.2.3
InformationsquelleAutor goenning | 2010-08-24