MessageValidation.DataAnnotations
1.0.0
dotnet add package MessageValidation.DataAnnotations --version 1.0.0
NuGet\Install-Package MessageValidation.DataAnnotations -Version 1.0.0
<PackageReference Include="MessageValidation.DataAnnotations" Version="1.0.0" />
<PackageVersion Include="MessageValidation.DataAnnotations" Version="1.0.0" />
<PackageReference Include="MessageValidation.DataAnnotations" />
paket add MessageValidation.DataAnnotations --version 1.0.0
#r "nuget: MessageValidation.DataAnnotations, 1.0.0"
#:package MessageValidation.DataAnnotations@1.0.0
#addin nuget:?package=MessageValidation.DataAnnotations&version=1.0.0
#tool nuget:?package=MessageValidation.DataAnnotations&version=1.0.0
MessageValidation.DataAnnotations
A DataAnnotations adapter for MessageValidation - validate messages using standard System.ComponentModel.DataAnnotations attributes in the MessageValidation pipeline.
Installation
dotnet add package MessageValidation.DataAnnotations
Quick Start
1. Decorate your message with attributes
using System.ComponentModel.DataAnnotations;
public class TemperatureReading
{
[Required(ErrorMessage = "SensorId is required.")]
public string SensorId { get; set; } = "";
[Range(-50, 150, ErrorMessage = "Value must be between -50 and 150.")]
public double Value { get; set; }
}
2. Register the adapter
builder.Services.AddMessageValidation(options =>
{
options.MapSource<TemperatureReading>("sensors/+/temperature");
});
builder.Services.AddMessageDataAnnotationsValidation();
That's it. The pipeline will automatically validate any message using its DataAnnotations attributes.
Supported attributes
All standard System.ComponentModel.DataAnnotations attributes are supported, including [Required], [Range], [StringLength], [RegularExpression], [EmailAddress], [Phone], and [CustomValidation].
Messages implementing IValidatableObject are also supported for cross-property validation.
Requirements
- .NET 10+
- MessageValidation >= 0.3.0
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- MessageValidation (>= 1.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.5)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.