Как повторно использовать данные в FluentValidationC#

Место общения программистов C#
Anonymous
Как повторно использовать данные в FluentValidation

Сообщение Anonymous »

Например, у меня есть валидатор с двумя правилами проверки:

Код: Выделить всё

// Rule 1
RuleFor(o => o.Email).Must((email) => this.GetDataDataFromDB(email) != 0)
.WithMessage("User with provided Email was not found in database!");

// Rule 2
RuleFor(o => o.Email).Must((email) => this.GetDataDataFromDB(email) >= 1)
.WithMessage("There are multiple users with provided Email in database!");
Как видите, есть два обращения к базе данных с одним и тем же методом. Как мне вызвать его один раз и повторно использовать данные для других правил?

Другая проблема при отображении сообщений об ошибках:

Код: Выделить всё

RuleFor(o => o.Email).Must((email) => this.GetDataDataFromDB(email) >= 1)
.WithMessage("There are multiple users with following Email '{0}' in database!",
(model, email) => { return email; });
Есть ли лучший способ отображать сообщения об ошибках, а не писать все время эти лямбда-выражения для получения свойства? Например, сохранить где-нибудь модель и использовать ее позже.

Простые и легкие в реализации решения были бы хороши!

Подробнее здесь: https://stackoverflow.com/questions/374 ... validation

Вернуться в «C#»