Validation Framework в .NET, который может редактировать поля
Исходя из моего опыта, многие платформы валидации в .NET позволяют проверять одно поле за раз, например, для подтверждения того, что поле представляет собой почтовый индекс или адрес электронной почты. Я обычно называю это внутриполевыми правками.
В моем проекте нам часто приходится вносить изменения между полями. Например, если у вас есть такой класс:
public class Range
{
public int Min { get; set; }
public int Max { get; set; }
}
Вы можете убедиться, что Макс больше, чем Мин. Вы также можете выполнить некоторую проверку по отношению к внешнему объекту. Например, если у вас есть такой класс:
public class Person
{
public string PostalCode { get; set; }
}
и по какой-либо причине вы хотите убедиться, что Почтовый индекс существует в базе данных или в предоставленном вам файле. У меня есть более сложные примеры, например, когда пользователь предоставляет словарь данных, и вы хотите проверить свой объект по этому словарю данных.
Мой вопрос: можем ли мы использовать любую из существующих платформ валидации (TNValidate, NHibernate Validator) для .NET или нам нужно использовать механизм правил или как? Как вы, люди в реальном мире, справляетесь с этой ситуацией? :-)