Moq используется в модульном тестировании, он используется для макета экземпляров fack в тестируемую систему,
Вы можете проверить объект, реализовав IValidatableObject
,
Попробуйте приведенный ниже фрагмент кода,
public class Employee : IValidatableObject
{
public string FirstName { get; set; }
public string LastName { get; set; }
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
var results = new List<ValidationResult>();
if (string.IsNullOrEmpty(FirstName) || FirstName.Length > 50) {
results.Add(new ValidationResult("Invalid first Name"));
}
if (string.IsNullOrEmpty(LastName) || LastName.Length > 50)
{
results.Add(new ValidationResult("Invalid last Name"));
}
return results;
}
}
Для проверки объекта,
var toValidate = new Employee(){};
var results = new List<ValidationResult>();
bool isValid = Validator.TryValidateObject(
toValidate,
new ValidationContext(toValidate, null, null),
results,
true);