FluentValidation 9.3.0-preview2

A validation library for .NET that uses a fluent interface to construct strongly-typed validation rules.

This is a prerelease version of FluentValidation.
There is a newer version of this package available.
See the version list below for details.
Install-Package FluentValidation -Version 9.3.0-preview2
dotnet add package FluentValidation --version 9.3.0-preview2
<PackageReference Include="FluentValidation" Version="9.3.0-preview2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add FluentValidation --version 9.3.0-preview2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: FluentValidation, 9.3.0-preview2"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install FluentValidation as a Cake Addin
#addin nuget:?package=FluentValidation&version=9.3.0-preview2&prerelease

// Install FluentValidation as a Cake Tool
#tool nuget:?package=FluentValidation&version=9.3.0-preview2&prerelease
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

FluentValidation 9 is a major release. Please read the upgrade notes at https://docs.fluentvalidation.net/en/latest/upgrading-to-9.html

Changes in 9.3.0:
* Improvements to LanguageManager's lazy loading of resources.
* Updates to Persian translations.
* Added Bengali translations.
* Deprecate IStringSource and its implementors. Use delegates instead.

Changes in 9.2.0:
* Add inheritance validator
* Performance improvements

Changes in 9.1.3:
* Fix an issue with IncludeRulesNotInRuleSet not working correctly

Changes in 9.1.2:
* Make the ValidationContext.ThrowOnFailures getter public.

Changes in 9.1.1:
* Fix an incorrect deprecation message.

Changes in 9.1:
* Make ruleset separator character splitting consistent
* Transform now works with RuleForEach
* Introduce constants for rulesets
* Resolve issue when attempting to use asynchronous conditions in a synchornous validaiton run
* Added asynchronous versions of the TestHelper methods.
* Introduce CascadeMode.Stop and deprecate CascadeMode.StopOnFirstFailure to resolve confusion/abiguity about setting the cascade mode at validator-level (#1437)
* RaiseValidationException can be overridden to customize the exception throwing process
* Add new Validate extension methods that allow options to be configured using a strategy

Changes in 9.0.0:
* Removed support for netstandard1.1 and netstandard1.6
* Removed support for end-of-life .NET Core versions (2.2 and 3.0). LTS versions are supported (2.1 and 3.1)
* Default email validation mode now uses the same logic as ASP.NET Core. Previous regex behaviour is opt-in.
* TestHelper advanced mode now has more features (see https://docs.fluentvalidation.net/en/latest/testing.html#advanced-test-extensions)
* Equal/NotEqual now perform ordinal comparison when used with string properties
* Severity can now be set dynamically with a callback
* Removed WithLocalizedMessage (WithMessage that takes a callback is the replacement)
* Removed ResourceName from ValidationFailure
* Removed ResourceName and ResourceType from IStringSource.
* Removed SetCollectionValidator which was deprecated in 8.0
* Additional overload of OnAnyFailure that can receive a collection of validation failures
* Remove DisplayAttribute integration and reference to DataAnnotations.
* ComparisonProperty placeholder is now formatted like PropertyName
* Translations of default error messages into other languages are now lazily-loaded
* Added Slovenian translations of default error messages.
* Added Icelandic translations of default error messages.
* Added WithMessageArgument to the test helpers.
* Add additional overload of SetValidator that takes a Func that receives the current property value.
* ASP.NET Core: FluentValidationModelValidatorProvider and FluentValidationModelValidator are now public.
* Work around a bug in ASP.NET Core's integration testing components that can cause ConfigureServices to run multiple times.
* SourceLink integration.
* {CollectionIndex} placeholder can now be accessed in child validators.
* Additional ValidationException constructor that allows using both the default message and a custom one together.
* ScalePrecisionValidator algorithm now matches SQL Server.
* Additional overload of the When methods that contain the validation context.
* Automatically scanned types can be excluded when calling RegisterValidatorsFromAssemblyContaining in ASP.NET Core projects.
* New AutomaticValidationEnabled property for use in ASP.NET Core projects (defaults to true).

Full release notes can be found at https://github.com/FluentValidation/FluentValidation/blob/master/Changelog.txt

  • .NETFramework 4.6.1

    • No dependencies.
  • .NETStandard 2.0

    • No dependencies.

NuGet packages (925)

Showing the top 5 NuGet packages that depend on FluentValidation:

Package Downloads
FluentValidation.AspNetCore
AspNetCore integration for FluentValidation
FluentValidation.DependencyInjectionExtensions
Dependency injection extensions for FluentValidation
FluentValidation.WebAPI
ASP.NET WebApi integration for FluentValidation
FluentValidation.MVC5
ASP.NET MVC 5 integration for FluentValidation
MicroElements.Swashbuckle.FluentValidation
Swagger ISchemaFilter that uses FluentValidation validators instead System.ComponentModel based attributes.

GitHub repositories (115)

Showing the top 5 popular GitHub repositories that depend on FluentValidation:

Repository Stars
aspnetboilerplate/aspnetboilerplate
ASP.NET Boilerplate - Web Application Framework
NancyFx/Nancy
Lightweight, low-ceremony, framework for building HTTP based services on .Net and Mono
Sonarr/Sonarr
Smart PVR for newsgroup and bittorrent users.
abpframework/abp
Open Source Web Application Framework for ASP.NET Core
ThreeMammals/Ocelot
.NET core API Gateway

Version History

Version Downloads Last updated
10.3.0 239,926 7/9/2021
10.2.3 766,889 6/3/2021
10.2.2 69,338 6/1/2021
10.2.1 69,441 5/30/2021
10.2.0 26,965 5/28/2021
10.1.0 794,381 4/28/2021
10.0.4 373,228 4/17/2021
9.5.4 397,688 4/5/2021
9.5.3 993,111 3/15/2021
9.5.2 417,405 3/8/2021
9.5.1 1,465,813 2/11/2021
9.5.0 718,192 1/31/2021
9.4.0 902,559 1/14/2021
9.3.0 3,748,833 11/10/2020
9.3.0-preview3 16,445 10/19/2020
9.3.0-preview2 66,647 9/15/2020
9.3.0-preview1 6,561 8/26/2020
9.2.2 2,493,912 9/20/2020
9.2.1 8,680 9/19/2020
9.2.0 2,908,071 8/26/2020
9.1.3 483,749 8/19/2020
9.1.2 349,523 8/12/2020
9.1.1 240,624 8/8/2020
9.1.0 10,544 8/8/2020
9.0.1 1,569,754 7/14/2020
9.0.0-preview5 51,620 5/23/2020
9.0.0-preview4 58,010 4/22/2020
9.0.0-preview3 103,614 2/29/2020
9.0.0-preview2 24,046 2/21/2020
9.0.0-preview1 50,753 2/8/2020
8.6.3 593,993 8/28/2020
8.6.2 10,918,020 2/29/2020
8.6.1 5,654,995 12/28/2019
8.6.0 2,211,276 12/4/2019
8.5.1 1,880,835 11/2/2019
8.5.0 2,825,016 9/24/2019
8.5.0-preview5 48,807 9/1/2019
8.5.0-preview4 73,676 7/23/2019
8.5.0-preview3 26,267 7/10/2019
8.5.0-preview2 41,278 6/13/2019
8.5.0-preview1 44,452 5/10/2019
8.4.0 7,668,644 5/10/2019
8.3.0 1,550,755 4/24/2019
8.2.3 394,023 4/12/2019
8.2.2 586,626 4/5/2019
8.2.1 115,503 4/4/2019
8.2.0 612,444 3/26/2019
8.1.3 3,447,282 1/25/2019
8.1.2 1,417,879 12/18/2018
8.1.1 412,440 12/11/2018
8.1.0 335,915 12/6/2018
8.1.0-preview2 26,007 11/14/2018
8.1.0-preview1 25,372 10/14/2018
8.0.101 446,042 11/24/2018
8.0.100 2,483,226 9/4/2018
8.0.0 584,090 8/16/2018
8.0.0-rc1 37,883 7/24/2018
8.0.0-preview4 22,236 7/16/2018
8.0.0-preview3 21,008 7/13/2018
8.0.0-preview2 20,772 7/13/2018
7.6.105 732,184 8/11/2018
7.6.104 1,698,478 7/6/2018
7.6.103 794,782 6/16/2018
7.6.102 178,351 6/14/2018
7.6.101 62,480 6/13/2018
7.6.100 134,185 6/7/2018
7.6.0 259,855 6/1/2018
7.6.0-preview1 35,206 4/12/2018
7.5.2 2,114,916 3/16/2018
7.5.1 170,413 3/11/2018
7.5.0 558,837 2/26/2018
7.4.0 839,583 1/26/2018
7.3.4 693,208 1/2/2018
7.3.3 145,880 12/22/2017
7.3.2 47,155 12/21/2017
7.3.1 213,756 12/13/2017
7.3.0 35,820 12/13/2017
7.3.0-beta3 25,425 12/8/2017
7.3.0-beta2 38,649 11/20/2017
7.3.0-beta1 22,390 11/11/2017
7.2.1 1,694,282 10/24/2017
7.2.0 525,320 10/5/2017
7.2.0-beta3 38,115 9/5/2017
7.2.0-beta2 24,102 8/22/2017
7.2.0-beta1 20,833 8/19/2017
7.1.1 1,153,153 7/25/2017
7.1.0 342,834 6/28/2017
7.1.0-beta1 20,674 6/24/2017
7.0.3 466,411 6/7/2017
7.0.2 183,050 5/26/2017
7.0.1 57,827 5/23/2017
7.0.0 282,793 5/19/2017
7.0.0-beta3 24,711 5/1/2017
7.0.0-beta2 24,336 4/17/2017
7.0.0-beta1 21,854 4/7/2017
6.4.1 838,176 3/15/2017
6.4.1-beta1 21,633 3/13/2017
6.4.0 586,083 3/3/2017
6.4.0-rc4 143,016 2/13/2017
6.4.0-rc3 30,649 2/3/2017
6.4.0-rc2 36,948 1/30/2017
6.4.0-rc1 20,736 1/30/2017
6.4.0-beta9 80,548 11/21/2016
6.4.0-beta8 47,322 10/31/2016
6.4.0-beta7 21,296 10/28/2016
6.4.0-beta6 21,712 10/25/2016
6.4.0-beta5 21,415 10/24/2016
6.4.0-beta4 21,445 10/21/2016
6.4.0-beta3 64,850 7/4/2016
6.4.0-beta2 22,296 7/1/2016
6.4.0-beta10 20,594 1/30/2017
6.4.0-beta1 24,498 6/28/2016
6.3.4-alpha 248,647 6/1/2016
6.3.3-alpha 20,993 5/27/2016
6.2.1 2,671,776 2/26/2016
6.2.1-beta1 24,876 2/24/2016
6.2.0 93,928 2/22/2016
6.2.0-beta1 21,093 2/12/2016
6.1.0 266,675 1/18/2016
6.0.2 90,747 1/5/2016
6.0.1 33,604 1/5/2016
6.0.0 72,207 12/22/2015
5.6.2 893,707 5/29/2015
5.6.1 27,605 5/29/2015
5.5.0 705,963 10/31/2014
5.4.0 417,826 7/3/2014
5.3.0 78,866 5/27/2014
5.2.0 53,384 5/21/2014
5.1.0 446,536 3/11/2014
5.0.0.1 237,521 10/24/2013
4.0.0.1 182,261 7/18/2013
4.0.0 90,564 4/29/2013
3.4.6 252,763 8/30/2012
3.4.0 53,391 8/17/2012
3.3.1 43,874 3/30/2012
3.2.0 55,511 11/14/2011
3.1.0 47,825 7/30/2011
3.0.0.1 23,156 7/5/2011
3.0.0 29,397 6/25/2011
2.0.0 43,831 1/9/2011
1.3.0 59,918 1/7/2011
Show less