Validation Framework
Search Results for

    Overview

    What is Validation Framework?

    Validation Framework is a lightweight, flexible, and extensible validation library for .NET applications. It provides a clean and intuitive way to validate various data types with customizable rules and detailed error reporting.

    Key Features

    Core Capabilities

    • Fluent API: Build validation rules with a clean, chainable syntax
    • Type-Safe: Compile-time type checking prevents runtime errors
    • Detailed Error Reporting: Comprehensive error messages with field-level tracking
    • Extensible: Easy to add custom validators for your specific needs
    • Async Support: Full support for asynchronous validation scenarios

    Built-in Validators

    The framework includes 70+ built-in validators covering common scenarios:

    • Basic: Email, Phone, URL, Date, Range, etc. (20+)
    • Network: IP Address, Domain, JWT, API Key, International Phone (6)
    • Identifiers: GUID, UUID, SSN, CVV, Credit Card Expiry (5)
    • Files: File Extension, MIME Type, File Path (3)
    • Versioning: Semantic Version (1)
    • Codes: Currency, Language, Country, Postal Code (4)
    • Location: Latitude, Longitude, Coordinates, Time Zone (4)
    • Text: Letters Only, Slug, Color (3)
    • Security: Strong Password (1)

    Platform Compatibility

    The framework is UI-agnostic and works seamlessly with all major .NET platforms:

    • ASP.NET Core: ModelState integration, action filters
    • WPF: INotifyDataErrorInfo support, validation rules
    • Windows Forms: ErrorProvider integration
    • Blazor: EditContext integration, validatable components
    • .NET MAUI: VisualElement validation, attached properties

    Architecture

    Core Components

    • Validator - Main validator class
    • ValidationResult - Validation outcome container
    • ValidationRule - Individual validation rule
    • CommonValidators - 20+ built-in validators
    • AsyncValidator - Async validation support
    • AsyncValidationRule - Async validation rule
    • AsyncValidationExtensions - Async helpers

    Platform-Specific Integrations

    • ValidationFramework.AspNetCore.cs - ASP.NET Core integration
    • ValidationFramework.Wpf.cs - WPF integration
    • ValidationFramework.WinForms.cs - Windows Forms integration
    • ValidationFramework.Blazor.cs - Blazor integration
    • ValidationFramework.Maui.cs - .NET MAUI integration

    Quick Example

    using ValidationFramework;
    
    // Create a validator
    var emailValidator = CommonValidators.EmailValidator();
    
    // Validate
    var result = emailValidator.Validate("john@example.com");
    
    if (result.IsValid)
    {
        Console.WriteLine("Email is valid!");
    }
    else
    {
        foreach (var error in result.Errors)
        {
            Console.WriteLine(error);
        }
    }
    

    Next Steps

    • Installation: Learn how to install the framework
    • Quick Start: Try it out with a simple example
    • Validation Basics: Understand core concepts
    • API Reference: Explore the complete API
    • Edit this page
    In this article
    Back to top Generated by DocFX