/// <summary> /// Specifies that values must be in a given range. /// </summary> /// <param name="builder">The builder.</param> /// <param name="minimum">The minimum allowed value.</param> /// <param name="maximum">The maximum allowed value.</param> /// <param name="errorMessage">A custom error message to display.</param> /// <returns>The builder.</returns> public static IValidationBuilder <double> Range(this IValidationBuilder <double> builder, double minimum, double maximum, string errorMessage = null) { var attribute = GetValidationAttr <RangeAttribute>(errorMessage, new object[] { minimum, maximum }); builder.Use(new AttributeValidator(attribute)); return(builder); }
/// <summary> /// Specifies that values must satisfy the requirements of the validation attribute of type <typeparamref name="TAttribute"/>. /// </summary> /// <typeparam name="TAttribute">The validation attribute type.</typeparam> /// <param name="builder">The builder.</param> /// <param name="ctorArgs">Constructor arguments for <typeparamref name="TAttribute"/>.</param> /// <param name="errorMessage">A custom error message to display.</param> /// <returns>The builder.</returns> public static IValidationBuilder Satisfies <TAttribute>(this IValidationBuilder builder, string errorMessage = null, params object[] ctorArgs) where TAttribute : ValidationAttribute { var attribute = GetValidationAttr <TAttribute>(errorMessage, ctorArgs); builder.Use(new AttributeValidator(attribute)); return(builder); }
#pragma warning disable RS0026 // Do not add multiple public overloads with optional parameters /// <summary> /// Specifies that values must be in a given range. /// </summary> /// <param name="builder">The builder.</param> /// <param name="minimum">The minimum allowed value.</param> /// <param name="maximum">The maximum allowed value.</param> /// <param name="errorMessage">A custom error message to display.</param> /// <returns>The builder.</returns> public static IValidationBuilder <double> Range(this IValidationBuilder <double> builder, double minimum, double maximum, string?errorMessage = null) #pragma warning restore RS0026 // Do not add multiple public overloads with optional parameters { var attribute = GetValidationAttr <RangeAttribute>(errorMessage, new object[] { minimum, maximum }); builder.Use(new AttributeValidator(attribute)); return(builder); }
#pragma warning disable RS0026 // Do not add multiple public overloads with optional parameters /// <summary> /// Specifies that values must be in a given range. /// </summary> /// <param name="builder">The builder.</param> /// <param name="minimum">The minimum allowed value.</param> /// <param name="maximum">The maximum allowed value.</param> /// <param name="errorMessage">A custom error message to display.</param> /// <returns>The builder.</returns> public static IValidationBuilder <int> Range(this IValidationBuilder <int> builder, int minimum, int maximum, string?errorMessage = null) #pragma warning restore RS0026 // Do not add multiple public overloads with optional parameters { var attribute = AddErrorMessage(new RangeAttribute(minimum, maximum), errorMessage); builder.Use(new AttributeValidator(attribute)); return(builder); }
private static IValidationBuilder Satisfies(this IValidationBuilder builder, ValidationAttribute attribute, string?errorMessage = null) { if (errorMessage is not null) { attribute.ErrorMessage = errorMessage; } builder.Use(new AttributeValidator(attribute)); return(builder); }