Правило FluentValidation для нулевого объектаC#

Место общения программистов C#
Ответить
Anonymous
 Правило FluentValidation для нулевого объекта

Сообщение Anonymous »

Я пытался придумать, как создать правило FluentValidation, которое проверяет, не является ли экземпляр проверяемого объекта нулевым, перед проверкой его свойств.
Я' Я лучше инкапсулирую эту нулевую проверку в Валидаторе, а не буду делать ее в вызывающем коде.
См. пример кода ниже с комментариями, где необходима необходимая логика:

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

namespace MyNamespace
{
using FluentValidation;

public class Customer
{
public string Surname { get; set; }
}

public class CustomerValidator: AbstractValidator
{
public CustomerValidator()
{
// Rule to check the customer instance is not null.

// Don't continue validating.

RuleFor(c => c.Surname).NotEmpty();
}
}

public class MyClass
{
public void DoCustomerWork(int id)
{
var customer = GetCustomer(id);
var validator = new CustomerValidator();

var results = validator.Validate(customer);

var validationSucceeded = results.IsValid;
}

public Customer GetCustomer(int id)
{
return null;
}
}
}
Поэтому мой вопрос: как мне проверить в конструкторе CustomerValidator(), что текущий экземпляр клиента не равен нулю и прервать дальнейшую обработку правил, если оно равно нулю?

Подробнее здесь: https://stackoverflow.com/questions/170 ... ull-object
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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