You indicated that you are TryValidateProperty Exception , but it looks like you are passing your instance to the TryValidateProperty method when you need to pass the value of this property.
Instead
Validator.TryValidateProperty(instance, validationContext, validationResults);
to try
Validator.TryValidateProperty(propertyValue, validationContext, validationResults);
you need to pass propertyValue to your method (or use reflection, which will be slower)
eg,
_ValidateProperty(someObject, "Field1", someObject.Field1);
source share