Oneiro.NewType.FluentValidation
9.1.0
dotnet add package Oneiro.NewType.FluentValidation --version 9.1.0
NuGet\Install-Package Oneiro.NewType.FluentValidation -Version 9.1.0
<PackageReference Include="Oneiro.NewType.FluentValidation" Version="9.1.0" />
<PackageVersion Include="Oneiro.NewType.FluentValidation" Version="9.1.0" />
<PackageReference Include="Oneiro.NewType.FluentValidation" />
paket add Oneiro.NewType.FluentValidation --version 9.1.0
#r "nuget: Oneiro.NewType.FluentValidation, 9.1.0"
#addin nuget:?package=Oneiro.NewType.FluentValidation&version=9.1.0
#tool nuget:?package=Oneiro.NewType.FluentValidation&version=9.1.0
NewType FluentValidation
Please reference FluentValidation for more information on how to use the library.
Oneiro.NewType.FluentValidation provides extensions to support validation of new types using FluentValidation.
Installation
To install the package, use the following command:
dotnet add package Oneiro.NewType.FluentValidation
Usage
Creating a New Type
First, create a new type by inheriting from NewType<T, TNewType>
or use one
of the many built in new types:
Creating a Validator
Next, create a validator for your new type using FluentValidation.
var validator = Validations.CreateValidatorFor<int, NewInt>(
builder => builder.GreaterThan(0)
);
Using the Validator
You can now use the validator to validate instances of your new type:
var newInt = NewInt.From(100);
var validator = Validations.CreateValidatorFor<int, NewInt>(
builder => builder.GreaterThan(0)
);
ValidationResult result = validator.Validate(newInt);
if (result.IsValid)
Console.WriteLine("Validation succeeded.");
else {
Console.WriteLine("Validation failed:");
foreach (var error in result.Errors)
Console.WriteLine($"- {error.ErrorMessage}");
}
ValidatedNewType
and IValidator
Any ValidatedNewType<T, TNewType>
rules defined can be used and converted into
an IValidator<TNewType>
using the Validations.CreateValidatorFor
method.
sealed record ValidatedNewInt : ValidatedNewType<int, NewInt> {
public ValidatedNewInt(int value) : base(value) {
RuleFor(x => x).GreaterThan(0);
}
}
var validator = Validations.CreateValidatorFor<int, ValidatedNewInt>();
License
This project is licensed under the MIT License. See the LICENSE file for more details.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. 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. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- FluentValidation (>= 11.11.0)
- Oneiro.NewType.Core (>= 9.1.0)
-
net6.0
- FluentValidation (>= 11.11.0)
- Oneiro.NewType.Core (>= 9.1.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 |
---|---|---|
9.1.0 | 92 | 3 months ago |