public ValidationResult IsValueValid <T>(Field <T> field, T item, object value, int row, int column, MessageErrors messageErrors) { var validationResult = new ValidationResult(); if (!IsRequiredFieldFilled(field, value)) { validationResult.AddError(new Error(messageErrors.EmptyRequiredField(field.Name), row, column)); } foreach (var validation in field.GetValidations()) { validationResult.AddResult(validation.IsValid(item, value, row, column)); } return(validationResult); }