RadzenDataAnnotationValidator Class

A validator component that validates form inputs using Data Annotations attributes defined on model properties. RadzenDataAnnotationValidator enables automatic validation based on attributes like [Required], [StringLength], [Range], [EmailAddress], etc. Must be placed inside a RadzenTemplateForm<T>. Uses the standard .NET validation attributes from System.ComponentModel.DataAnnotations. Reads all validation attributes on a model property and validates the input accordingly. Benefits include centralized validation (define rules once on the model, use everywhere), support for multiple validation attributes per property, built-in attributes (Required, StringLength, Range, EmailAddress, Phone, Url, RegularExpression, etc.), works with custom ValidationAttribute implementations, and multiple errors joined with MessageSeparator. Ideal when your validation rules are already defined on your data models using data annotations. Automatically extracts error messages from the attributes' ErrorMessage properties.

Inheritance

Object

ComponentBase

RadzenComponent

ValidatorBase

RadzenDataAnnotationValidator

Implements

IComponent

IHandleEvent

IHandleAfterRender

IRadzenFormValidator

Namespace: Radzen.Blazor

Assembly: Radzen.Blazor.dll

Syntax

public class RadzenDataAnnotationValidator : ValidatorBase, IComponent, IHandleEvent, IHandleAfterRender, IRadzenFormValidator

Examples

Model-based validation with data annotations:

<RadzenTemplateForm TItem="UserModel" Data=@user>
    <RadzenTextBox Name="Email" @bind-Value=@user.Email />
    <RadzenDataAnnotationValidator Component="Email" />
</RadzenTemplateForm>
@code {
    class UserModel
    {
        [Required(ErrorMessage = "Email is required")]
        [EmailAddress(ErrorMessage = "Invalid email format")]
        [StringLength(100, ErrorMessage = "Email too long")]
        public string Email { get; set; }
    }
    UserModel user = new UserModel();
}

Custom error separator:

<RadzenDataAnnotationValidator Component="Name" MessageSeparator=" | " />

Constructors

RadzenDataAnnotationValidatorlink

A validator component that validates form inputs using Data Annotations attributes defined on model properties. RadzenDataAnnotationValidator enables automatic validation based on attributes like [Required], [StringLength], [Range], [EmailAddress], etc. Must be placed inside a RadzenTemplateForm<T>. Uses the standard .NET validation attributes from System.ComponentModel.DataAnnotations. Reads all validation attributes on a model property and validates the input accordingly. Benefits include centralized validation (define rules once on the model, use everywhere), support for multiple validation attributes per property, built-in attributes (Required, StringLength, Range, EmailAddress, Phone, Url, RegularExpression, etc.), works with custom ValidationAttribute implementations, and multiple errors joined with MessageSeparator. Ideal when your validation rules are already defined on your data models using data annotations. Automatically extracts error messages from the attributes' ErrorMessage properties.

Declaration
public RadzenDataAnnotationValidator()

Properties

MessageSeparatorlink

Gets or sets the text used to join multiple validation error messages. When multiple data annotation attributes fail (e.g., both Required and StringLength), their messages are combined with this separator.

Declaration
public string MessageSeparator { get; set; }
Property Value
Type Description
stringGets or sets the text used to join multiple validation error messages. When multiple data annotation attributes fail (e.g., both Required and StringLength), their messages are combined with this separator.

ServiceProviderlink

Service provider injected from the Dependency Injection (DI) container.

Declaration
public IServiceProvider ServiceProvider { get; set; }
Property Value
Type Description
IServiceProviderService provider injected from the Dependency Injection (DI) container.

Textlink

Gets or sets the validation error message. This property is automatically populated with error messages from data annotation attributes when validation fails. If multiple attributes fail, messages are joined using MessageSeparator.

Declaration
public string Text { get; set; }
Property Value
Type Description
stringGets or sets the validation error message. This property is automatically populated with error messages from data annotation attributes when validation fails. If multiple attributes fail, messages are joined using MessageSeparator.

Methods

Validatelink

Declaration
protected override bool Validate(IRadzenFormComponent component)
Parameters
Type Name Description
IRadzenFormComponent component
Returns
Type Description
bool
An error has occurred. This app may no longer respond until reloaded. Reload 🗙