Как переопределить обязательное сообщение об ошибке по умолчанию - PullRequest
0 голосов
/ 29 октября 2018

У меня есть старое веб-приложение C # MVC 2.0.

Всякий раз, когда я использую атрибут [Required], по умолчанию появляется сообщение об ошибке проверки:

Поле [все] обязательно для заполнения.

Моя проблема в том, что приложение не на английском языке, поэтому я должен изменить атрибут вызова на [Required(ErrorMessage = "Le champ [whatever] est requis.")] везде.

Есть ли способ переопределить сообщение об ошибке по умолчанию, поэтому я должен указывать его только тогда, когда мне нужно конкретное сообщение?

Я ищу что-то вроде:

DefaultRequiredMessage = "Le champ {0} est requis.";

1 Ответ

0 голосов
/ 29 октября 2018

Вы можете создать класс и наследовать его от RequiredAttribute. Примерно так:

public class CustomRequired: RequiredAttribute
{
    public CustomRequired()
    {
        this.ErrorMessage = "Le champ est requis.";
    }
}

Или:

public class CustomRequired: RequiredAttribute
{
    public override string FormatErrorMessage(string whatever)
    {
        return !String.IsNullOrEmpty(ErrorMessage)
            ? ErrorMessage
            : $"Le champ {whatever} est requis.";
    }
}

Вы должны использовать CustomRequired со своими свойствами, а не [Required].

...