A Fluent Validation Framework
SpecExpress was developed to be a fluent validation framework and container for .Net that makes it easier to write validation rules and validate your objects. SpecExpress also offers integration with ASP.NET WebForms, eliminating duplication of your validation rules.

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.

Main features:

  • The SpecExpress DSL provides developers with a Fluent Interface for quickly composing rules that are also easy to read.
  • Generates error message from your validation rules, but allows for easy overriding and customization of individual messages. Support for localization of error messages.
  • Validation Catalog allows:
  • 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

last updated on:
August 18th, 2014, 2:15 GMT
file size:
154 KB
license type:
Apache License 2.0 
developed by:
operating system(s):
Windows All
C: \ Programming \ Other Programming Files
Download Button

In a hurry? Add it to your Download Basket!

user rating



Rate it!
What's New in version
  • Added support for DisplayAttribute such that error messages will use the name specified in the attribute if it exists.
  • Changed Error message given when multiple specifications for a given type are found to include the name of the type.
read full changelog

Add your review!