SpecExpress takes a different approach than most other Validation Frameworks, such as Validation Application Block. SpecExpress doesn't use Attributes to decorate properties and embed all the metadata required for the rule. Instead, it it uses a separate class, called a Specification, which contains a set a rules for all the properties for a type. This allows for much easier reading, separation of concerns, and much better support for state based validation.

Features include: DSL that provides developers with a Fluent Interface for quickly composing rules that are also easy to read;    Generates error message from your validation rules, while allowing for easy overriding and customization of individual messages; Support for localization of error messages;
Auto discovery of specifications means the developer isn't required to resolve which validation rules to use;      Programatically add or change validation rules at runtime; Validation Contexts Support for rich, complex object types and graphs; Built with extension and customization in mind; Easy to integrate into your existing code because there are no Base Classes or Attributes to inject into your code; ASP.NET WebForms support; Silverlight support; A rich set of Validators.

Install-Package SpecExpress -Version
dotnet add package SpecExpress --version
<PackageReference Include="SpecExpress" Version="" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add SpecExpress --version
The NuGet Team does not provide support for this client. Please contact its maintainers for support.


This package has no dependencies.

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated 67,186 8/3/2014 4,025 1/11/2012 2,245 11/14/2011 743 10/30/2011 929 9/13/2011 704 8/31/2011 682 8/18/2011 728 7/7/2011
1.5.0 762 5/27/2011