MediatR.Extensions.FluentValidation.AspNetCore
2.0.0
See the version list below for details.
dotnet add package MediatR.Extensions.FluentValidation.AspNetCore --version 2.0.0
NuGet\Install-Package MediatR.Extensions.FluentValidation.AspNetCore -Version 2.0.0
<PackageReference Include="MediatR.Extensions.FluentValidation.AspNetCore" Version="2.0.0" />
paket add MediatR.Extensions.FluentValidation.AspNetCore --version 2.0.0
#r "nuget: MediatR.Extensions.FluentValidation.AspNetCore, 2.0.0"
// Install MediatR.Extensions.FluentValidation.AspNetCore as a Cake Addin
#addin nuget:?package=MediatR.Extensions.FluentValidation.AspNetCore&version=2.0.0
// Install MediatR.Extensions.FluentValidation.AspNetCore as a Cake Tool
#tool nuget:?package=MediatR.Extensions.FluentValidation.AspNetCore&version=2.0.0
MediatR.Extensions.FluentValidation.AspNetCore
MediatR extension for FluentValidation using asp.net core
Install
A priori you need to install packages Mediatr and FluentValidation then continue 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(domainAssembly);
//Add FluentValidation
services.AddFluentValidation(new[] {domainAssembly});
//Add other stuffs
...
}
Use
Just to write down validators for IRequest
implementation. 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<Unit> Handle(GenerateInvoiceRequest request, CancellationToken cancellationToken)
{
// request data has been validated
...
}
}
More examples check FluentValidation docs: https://fluentvalidation.net/start
Product | Versions |
---|---|
.NET | net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows |
.NET Core | netcoreapp3.0 netcoreapp3.1 |
.NET Standard | netstandard2.1 |
MonoAndroid | monoandroid |
MonoMac | monomac |
MonoTouch | monotouch |
Tizen | tizen60 |
Xamarin.iOS | xamarinios |
Xamarin.Mac | xamarinmac |
Xamarin.TVOS | xamarintvos |
Xamarin.WatchOS | xamarinwatchos |
-
.NETStandard 2.1
- FluentValidation (>= 10.0.4)
- FluentValidation.DependencyInjectionExtensions (>= 10.0.4)
- MediatR (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 2.1.0)
NuGet packages (3)
Showing the top 3 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 |
|
Kros.CqrsTemplate
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.