MediatR.Extensions.FluentValidation.AspNetCore
5.1.0
dotnet add package MediatR.Extensions.FluentValidation.AspNetCore --version 5.1.0
NuGet\Install-Package MediatR.Extensions.FluentValidation.AspNetCore -Version 5.1.0
<PackageReference Include="MediatR.Extensions.FluentValidation.AspNetCore" Version="5.1.0" />
paket add MediatR.Extensions.FluentValidation.AspNetCore --version 5.1.0
#r "nuget: MediatR.Extensions.FluentValidation.AspNetCore, 5.1.0"
// Install MediatR.Extensions.FluentValidation.AspNetCore as a Cake Addin #addin nuget:?package=MediatR.Extensions.FluentValidation.AspNetCore&version=5.1.0 // Install MediatR.Extensions.FluentValidation.AspNetCore as a Cake Tool #tool nuget:?package=MediatR.Extensions.FluentValidation.AspNetCore&version=5.1.0
MediatR.Extensions.FluentValidation.AspNetCore
MediatR extension to the FluentValidation for .NET framework
Install
First you need to install packages Mediatr and FluentValidation, then follow the instructions below
Install with nuget
Install-Package MediatR.Extensions.FluentValidation.AspNetCore
Install with .NET CLI
dotnet add package MediatR.Extensions.FluentValidation.AspNetCore
How to use
Setup - Add configuration in startup
public void ConfigureServices(IServiceCollection services)
{
// Add framework services etc.
services.AddMvc();
var domainAssembly = typeof(GenerateInvoiceHandler).GetTypeInfo().Assembly;
// Add MediatR
services.AddMediatR(cfg => cfg.RegisterServicesFromAssembly(domainAssembly));
//Add FluentValidation
services.AddFluentValidation(new[] {domainAssembly});
//Add other stuffs
...
}
Use
Implement validator for your IRequest
objects. Validation will be executed before handling IRequestHandler
.
public class GenerateInvoiceValidator : AbstractValidator<GenerateInvoiceRequest>
{
public GenerateInvoiceValidator()
{
RuleFor(x => x.Month).LowerThan(13);
// etc.
}
}
public class GenerateInvoiceRequest : IRequest
{
public int Month { get; set; }
}
public class GenerateInvoiceRequestHandler : IRequestHandler<GenerateInvoiceRequest>
{
public async Task Handle(GenerateInvoiceRequest request, CancellationToken cancellationToken)
{
// request data has been validated
...
}
}
More examples check FluentValidation docs: https://fluentvalidation.net/start
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | 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.1
- FluentValidation (>= 11.0.0)
- FluentValidation.DependencyInjectionExtensions (>= 11.0.0)
- MediatR (>= 12.0.1)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 6.0.0)
NuGet packages (10)
Showing the top 5 NuGet packages that depend on MediatR.Extensions.FluentValidation.AspNetCore:
Package | Downloads |
---|---|
NeerCore.Application.MediatR
The NeerCore.Application.MediatR package provides classes for simplified application configuration using the MediatR library. It is a library for simplified writing of .NET apps. It integrates a popular set of core libraries that are required for developing full-fledged apps, but they don't come out of the box in ASP.NET. NeerCore can be used as shown in the examples in the official repository, or separately in parts that you need. You can also use part of the code from the repository if you do not need to include "one more nuget package" or if your project is not support the version of .NET on which NeerCore was created. |
|
Atlas.Framework.CleanArchitecture
Package Description |
|
SharedKernel.Application
SharedKernel.Application |
|
EPS.SharedKernel.Application
EPS.SharedKernel.Application |
|
Kros.CqrsTemplate
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
5.1.0 | 495,967 | 11/19/2023 |
5.0.0 | 48,438 | 10/14/2023 |
4.0.0 | 761,694 | 10/17/2022 |
3.0.0 | 269,644 | 5/9/2022 |
2.0.0 | 182,634 | 1/15/2022 |
1.2.0 | 337,762 | 5/13/2021 |
1.1.1 | 333,201 | 8/23/2020 |
1.1.0 | 28,587 | 8/5/2020 |
1.0.3 | 3,365 | 7/31/2020 |
1.0.2 | 19,904 | 6/18/2020 |
1.0.1 | 45,111 | 9/3/2019 |
1.0.0 | 6,837 | 9/3/2019 |