Validator.AspNetCore
1.0.0
See the version list below for details.
dotnet add package Validator.AspNetCore --version 1.0.0
NuGet\Install-Package Validator.AspNetCore -Version 1.0.0
<PackageReference Include="Validator.AspNetCore" Version="1.0.0" />
<PackageVersion Include="Validator.AspNetCore" Version="1.0.0" />
<PackageReference Include="Validator.AspNetCore" />
paket add Validator.AspNetCore --version 1.0.0
#r "nuget: Validator.AspNetCore, 1.0.0"
#:package Validator.AspNetCore@1.0.0
#addin nuget:?package=Validator.AspNetCore&version=1.0.0
#tool nuget:?package=Validator.AspNetCore&version=1.0.0
Validator.AspNetCore
Simple, fluent interface validation implementation for ASP.NET Core.
Installing Validator.AspNetCore
You should install Mediator.CodeGen with NuGet or the .NET Core command line interface:
Install-Package Validator.AspNetCore
or
dotnet add package Validator.AspNetCore
Getting Started
Validator.AspNetCore supports Microsoft.Extensions.DependencyInjection.Abstractions directly:
services.AddValidatorsFromAssemblies(assembly1, assembly2);
(this registers concrete IValidator<> implementations as singletons);
OR
services.AddValidatorsFromAssemblies(ServiceLifetime.Scoped, assembly1, assembly2);
(this overload registers concrete IValidator<> implementations with the desired ServiceLifetime);
Usage (see /samples directory for more)
using Validator.AspNetCore;
public sealed class PersonValidator : AbstractValidator<Person>
{
public PersonValidator()
{
this
.RuleFor(x => x.Id)
.NotEmpty()
.GreaterThanOrEqualTo(0);
this
.RuleFor(x => x.FirstName)
.NotEmpty()
.MaximumLength(100);
}
}
Custom Rules
using Validator.AspNetCore;
using Validator.AspNetCore.Rules;
public static class RuleBuilderExtensions
{
private const int MaximumIdValue = int.MaxValue - 69;
// add custom rules by extending the IRuleBuilder<,> interface
public static IRuleBuilder<T, int> RejectHugeIds<T>(this IRuleBuilder<T, int> ruleBuilder)
{
ruleBuilder.AddRule(validationContext =>
{
if (validationContext.PropertyValue > MaximumIdValue)
{
return new ValidationFailure(
PropertyName: validationContext.PropertyName,
ErrorCode: "RejectHugeIdsRule",
ErrorMessage: $"{validationContext.PropertyName} cannot be greater than {MaximumIdValue}.");
}
return true;
});
return ruleBuilder;
}
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
2.0.1 | 206 | 8/6/2025 |