CoreMesh.Validation.Abstractions
0.2.0
dotnet add package CoreMesh.Validation.Abstractions --version 0.2.0
NuGet\Install-Package CoreMesh.Validation.Abstractions -Version 0.2.0
<PackageReference Include="CoreMesh.Validation.Abstractions" Version="0.2.0" />
<PackageVersion Include="CoreMesh.Validation.Abstractions" Version="0.2.0" />
<PackageReference Include="CoreMesh.Validation.Abstractions" />
paket add CoreMesh.Validation.Abstractions --version 0.2.0
#r "nuget: CoreMesh.Validation.Abstractions, 0.2.0"
#:package CoreMesh.Validation.Abstractions@0.2.0
#addin nuget:?package=CoreMesh.Validation.Abstractions&version=0.2.0
#tool nuget:?package=CoreMesh.Validation.Abstractions&version=0.2.0
English | 繁體中文
CoreMesh.Validation.Abstractions
Contracts and built-in rule extensions for the CoreMesh validation system. No DI or framework dependencies.
For most application projects, use CoreMesh.Validation instead (it includes these abstractions plus the Validator implementation and DI registration).
Contracts
| Type | Description |
|---|---|
IValidator |
Entry point: Validate<T>(model) |
IValidatable<T> |
Implemented by models or validator classes to define rules |
IValidationBuilder<T> |
Exposes For(expression) to start a rule chain |
ValidationResult |
IsValid + Errors (dictionary keyed by property name) |
RuleResult |
Single rule outcome with optional error message and StopOnError flag |
Built-in Rules
builder.For(x => x.Name)
.NotNull()
.StopOnInvalid() // short-circuit: stop if any previous rule failed
.NotEmpty()
.MinLength(2)
.MaxLength(50);
builder.For(x => x.Email).EmailAddress();
builder.For(x => x.Age).GreaterThan(0);
builder.For(x => x.Score).LessThanOrEqual(100);
| Category | Rules |
|---|---|
| General | Must(predicate, msg?), StopOnInvalid() |
| String | NotNull, NotEmpty, MinLength, MaxLength, EmailAddress |
| Comparison | GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual |
| Collection | NotNull, NotEmpty (for List<T>?) |
Nullable value type overloads are available for NotNull, GreaterThanOrEqual, and LessThanOrEqual.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on CoreMesh.Validation.Abstractions:
| Package | Downloads |
|---|---|
|
CoreMesh.Validation
Lightweight fluent validation library for .NET with rule caching and DI-friendly validator entry point. |
GitHub repositories
This package is not used by any popular GitHub repositories.