Что касается вопроса / ответа, на который вы ссылаетесь, я предполагаю, что будет некоторый код, который выполняется либо на уровне данных, либо в самом классе, который выполняет проверку. Этот код будет использовать Reflection для проверяемого объекта, чтобы найти свойства с различными атрибутами и запустить специальную логику проверки, связанную с этим атрибутом для этого свойства.
Это может выглядеть примерно так:
public void Validate( object obj )
{
foreach (var property in obj.GetType().GetProperties())
{
var attribute = property.GetCustomAttributes(typeof(ValidationAttribute), false);
var validator = ValidationFactory.GetValidator( attribute );
validator.Validate( property.GetValue( obj, null ) );
}
}