Manually Execute Validation Attributes C# with Example



Manually Execute Validation Attributes C# with Example

Most of the times, validation attributes are use inside frameworks (such as ASP.NET). Those frameworks take care 
of executing the validation attributes. But what if you want to execute validation attributes manually? Just use the 
Validator class (no reflection needed). 
Validation Context 
Any validation needs a context to give some information about what is being validated. This can include various 
information such as the object to be validated, some properties, the name to display in the error message, etc. 
ValidationContext vc = new ValidationContext(objectToValidate); // The simplest form of validation 
context. It contains only a reference to the object being validated. 
Once the context is created, there are multiple ways of doing validation. 
Validate an Object and All of its Properties 
ICollection results = new List(); // 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 
Validate a Property of an Object 
ICollection results = new List(); // 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 
And More 
To learn more about manual validation see: 
ValidationContext Class Documentation 
Validator Class Documentation 

0 Comment's

Comment Form

Submit Comment