7
С методом Dispose никаких проблем нет: его логика очень проста.
Но обычно в базовом классе если какой-то более сложный алгоритм, точка расширения которого находится посередине а не с краю. Потому и нужен отдельный метод:
interface IValidator
{
ValidationResult Validate(object obj);
}
clas...