В моем проекте MVC3 я храню прогноз счета для футбольной / футбольной / хоккейной / ... спортивной игры. Итак, одно из свойств моего класса предсказания выглядит так:
[Range(0, 15, ErrorMessage = "Can only be between 0 .. 15")]
[StringLength(2, ErrorMessage = "Max 2 digits")]
[Remote("PredictionOK", "Predict", ErrorMessage = "Prediction can only be a number in range 0 .. 15")]
public int? HomeTeamPrediction { get; set; }
Теперь мне также нужно изменить сообщение об ошибке для типа данных int
в моем случае. По умолчанию используется какое-то значение - «Поле HomeTeamPrediction должно быть числом.». Необходимо найти способ изменить это сообщение об ошибке. Это сообщение проверки также, похоже, принимает прогноз для удаленной проверки.
Я пробовал [DataType]
атрибут, но это не похоже на простое число в system.componentmodel.dataannotations.datatype
перечислении.
источник
Попробуйте одно из этих регулярных выражений:
надеюсь, что это поможет: D
источник
int.MaxValue
только каверы до2.147.483.647
Использовать регулярное выражение в аннотации данных
источник
[0-9]+
?источник
Попробуйте этот атрибут:
А также необходимо зарегистрировать атрибут в плагине валидатора:
источник
Прошло почти десять лет, но проблема все еще актуальна и с Asp.Net Core 2.2.
Мне это удалось, добавив
data-val-number
в поле ввода локализацию использования в сообщении:источник
ASP.NET Core 3.1
Это моя реализация функции, она работает на стороне сервера, а также с ненавязчивой проверкой jquery с настраиваемым сообщением об ошибке, как и любой другой атрибут:
Атрибут:
Логика на стороне клиента:
И, наконец, использование:
источник