Not widely used, but very handy when you need to validate a model outside of an ASP.NET pipeline — in a console app, a background worker, or any context where the framework validation middleware isn't available. Validator.TryValidateObject from System.ComponentModel.DataAnnotations lets you run the same [Required], [MaxLength], and custom annotation attributes manually against any object.

