Я думаю, что ValidationResult используется ValidationException, который генерируется подклассами ValidationAttribute.Обычно этот механизм используется с блокировкой ошибок валидации, потому что исключение исключает выполнение кода.Если это происходит в вашей службе, исключение можно отправить клиенту и обработать, но это не всегда требуемый сценарий.
Вы можете расширить эту модель (эти классы ValidationAttribute, его подклассы, ValidationException не закрыты), чтобы добавить флаг предупреждения, но тогда вам придется перехватить исключение, чтобы продолжить обработку и повторно обработать в случае предупреждения.
Другой альтернативой является добавление ошибок проверки бизнес-логики и предупреждений в ваш ответ наклиент.Мне нравится этот подход, потому что вы можете включать любую информацию, какую хотите, так, как вы хотите / нуждаетесь в ней.