Как изменить стандартное сообщение для проверки int / datetime? - PullRequest
0 голосов
/ 02 ноября 2018

Я использую свободную проверку со следующими правилами:

public class MovieViewModelValidator : AbstractValidator<MovieViewModel>
{
    public MovieViewModelValidator()
    {
        RuleFor(m => m.Movie.Name).NotEmpty().WithMessage("Der Titel darf nicht Leer sein.")
                                .Length(0, 255).WithMessage("Der Titel darf nicht mehr als 255 Zeichen haben.");

        RuleFor(m => m.Movie.Description).NotEmpty().WithMessage("Die Beschreibung darf nicht Leer sein.")
                                .Length(0, 2000).WithMessage("Die Beschreibung darf nicht mehr als 2000 Zeichen haben.");

        RuleFor(m => m.Movie.ReleaseDate).NotEmpty().WithMessage("Das Erscheinungsdatum darf nicht Leer sein.");

        RuleFor(m => m.Movie.Duration).NotEmpty().WithMessage("Die Dauer darf nicht Leer sein.")
                                .LessThan(600).WithMessage("Die Dauer kann nicht über 600 Minuten betragen");

        RuleFor(m => m.Movie.AgeRestrictionId).NotEmpty().WithMessage("Bitte eine Altersbeschränkung wählen");
    }
}

Проблема в том, что если мои Duration, ReleaseDate и AgeRestrictionId пусты, сообщение об ошибке проверки будет «Требуется значение». а не сообщение, которое я установил в правиле. Я уже пробовал Empty(), Equal(0), NotEqual(0) и многое другое, но я не понимаю, почему это не работает. Может ли кто-нибудь помочь мне, а также дать мне объяснение, почему Empty() или NotEmpty() не работает, когда это работает для Имени и Описания?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...