Looking for c# Keywords? Try Ask4Keywords

C# Language Вручную выполнять атрибуты проверки


пример

В большинстве случаев атрибуты проверки используются внутри фреймворков (например, ASP.NET). Эти рамки заботятся о выполнении атрибутов проверки. Но что, если вы хотите вручную выполнить атрибуты проверки? Просто используйте класс Validator (не требуется никакого отражения).

Контекст проверки

Любая проверка требует контекста, чтобы дать некоторую информацию о том, что проверяется. Это может включать в себя различную информацию, такую ​​как проверяемый объект, некоторые свойства, имя для отображения в сообщении об ошибке и т. Д.

ValidationContext vc = new ValidationContext(objectToValidate); // The simplest form of validation context. It contains only a reference to the object being validated.

После создания контекста существует несколько способов проверки.

Проверка объекта и всех его свойств

ICollection<ValidationResult> results = new List<ValidationResult>(); // Will contain the results of the validation
bool isValid = Validator.TryValidateObject(objectToValidate, vc, results, true); // Validates the object and its properties using the previously created context.
// The variable isValid will be true if everything is valid
// The results variable contains the results of the validation

Проверка свойства объекта

ICollection<ValidationResult> results = new List<ValidationResult>(); // Will contain the results of the validation
bool isValid = Validator.TryValidatePropery(objectToValidate.PropertyToValidate, vc, results, true); // Validates the property using the previously created context.
// The variable isValid will be true if everything is valid
// The results variable contains the results of the validation

И больше

Подробнее о ручной проверке см. В: