Валидировать объект, например, перед сохранением в базу данных, можно разными способами. Есть способ "Простой", обычно все им и пользуются. Хочу показать "Продвинутый" способ. И не только показать сам способ, но и его реализацию. И даже презентовать новый nuget-пакет.
Посмотреь видео вы можете на канале youtube. На видео показан процесс создания IRulesValidator, а также пример использования уже готового nuget-пакета Calabonga.RulesVlidator
This is a sample for demo purposes. Please, see in repository on github.com

var validator = container.GetRequiredService<PersonValidator>();

