Reo.Core.Validation
10.0.177
dotnet add package Reo.Core.Validation --version 10.0.177
NuGet\Install-Package Reo.Core.Validation -Version 10.0.177
<PackageReference Include="Reo.Core.Validation" Version="10.0.177" />
<PackageVersion Include="Reo.Core.Validation" Version="10.0.177" />
<PackageReference Include="Reo.Core.Validation" />
paket add Reo.Core.Validation --version 10.0.177
#r "nuget: Reo.Core.Validation, 10.0.177"
#:package Reo.Core.Validation@10.0.177
#addin nuget:?package=Reo.Core.Validation&version=10.0.177
#tool nuget:?package=Reo.Core.Validation&version=10.0.177
Reo.Core.Validations
Описание пакета
Reo.Core.Validations — это набор утилит для валидации данных в .NET-приложениях. Пакет предоставляет готовые валидаторы для часто используемых сценариев (например, проверка email, IP-адресов, гос. номеров транспортных средств) и интеграцию с контейнером зависимостей (DI) для централизованной валидации всех зарегистрированных опций. Он решает проблему повторного кодирования валидационной логики и обеспечивает высокую степень повторного использования.
Основные компоненты
IOptionsValidationExecutorИнтерфейс для запуска валидации всех зарегистрированных в DI-контейнере опций. Пример:var executor = serviceProvider.GetRequiredService<IOptionsValidationExecutor>(); executor.Execute(); // Выполняет валидацию всех опцийGenericValidator<T>Базовый класс для создания кастомных валидаторов с поддержкой FluentValidation. Пример:public class MyValidator : GenericValidator<MyModel> { public MyValidator() { RuleFor(x => x.Property).NotEmpty(); } }Кастомные валидаторы
EmailAddressPropertyValidator<T>— проверка корректности email-адреса.NetworkAddressPropertyValidator<T>— проверка IP-адресов или доменных имен.VehicleRegistrationNumberValidator— валидация гос. номера ТС по стандартам РФ.
Расширения FluentValidation
ValidEmailAddress<T>()— добавляет валидацию email в FluentValidation.ValidNetworkAddress<T>()— добавляет валидацию сетевых адресов.
Требования
- .NET версии: 8.0, 9.0
- Зависимости:
Установка
NuGet Package Manager
Install-Package Reo.Core.Validations
.NET CLI
dotnet add package Reo.Core.Validations
Настройка
Регистрация сервисов в ASP.NET Core
Добавьте в Program.cs или Startup.cs:
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddValidation(); // Регистрация валидаторов и IOptionsValidationExecutor
Конфигурационные параметры
N/A. Настройка валидации выполняется через DI и FluentValidation.
Использование
Пример 1: Валидация email с FluentValidation
public class UserValidator : AbstractValidator<User>
{
public UserValidator()
{
RuleFor(x => x.Email).ValidEmailAddress(); // Использование кастомного валидатора
}
}
Пример 2: Валидация гос. номера транспортного средства
var validator = new VehicleRegistrationNumberValidator();
var result = validator.Validate("А123ВС45"); // Валидация номера
if (!result.IsValid)
{
foreach (var error in result.Errors)
{
Console.WriteLine(error.ErrorMessage);
}
}
Пример 3: Централизованная валидация опций
var executor = serviceProvider.GetRequiredService<IOptionsValidationExecutor>();
executor.Execute(); // Триггерит проверку всех зарегистрированных опций
Лицензия
Данный пакет распространяется под лицензией MIT.
| 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
- FluentValidation (>= 12.1.1)
- FluentValidation.AspNetCore (>= 11.3.1)
- JetBrains.Annotations (>= 2025.2.4)
- Microsoft.Extensions.Configuration (>= 10.0.8)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.8)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.8)
- Microsoft.Extensions.DependencyInjection (>= 10.0.8)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.8)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.8)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.8)
- Microsoft.Extensions.Options (>= 10.0.8)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.8)
- stbychkov.AutoLoggerMessage (>= 1.0.15)
- Swashbuckle.AspNetCore (>= 10.2.0)
NuGet packages (14)
Showing the top 5 NuGet packages that depend on Reo.Core.Validation:
| Package | Downloads |
|---|---|
|
Reo.Core.Hosting
Package Description |
|
|
Reo.Core.DistributedCache.Abstractions
Package Description |
|
|
Reo.Core.Queue.RabbitMq
Package Description |
|
|
Reo.Core.Auth
Package Description |
|
|
Reo.Core.ConfigValidation
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.177 | 73 | 6/5/2026 |
| 10.0.176 | 77 | 6/5/2026 |
| 10.0.175 | 80 | 6/5/2026 |
| 10.0.174 | 133 | 6/4/2026 |
| 10.0.173 | 140 | 6/4/2026 |
| 10.0.172 | 139 | 6/4/2026 |
| 10.0.171 | 163 | 6/4/2026 |
| 10.0.170 | 222 | 6/3/2026 |
| 10.0.169 | 253 | 6/3/2026 |
| 10.0.168 | 277 | 6/2/2026 |
| 10.0.167 | 357 | 6/1/2026 |
| 10.0.166 | 330 | 6/1/2026 |
| 10.0.165 | 325 | 6/1/2026 |
| 10.0.164 | 322 | 6/1/2026 |
| 10.0.163 | 326 | 6/1/2026 |
| 10.0.162 | 339 | 6/1/2026 |
| 10.0.161 | 359 | 5/28/2026 |
| 10.0.160 | 346 | 5/27/2026 |
| 10.0.159 | 348 | 5/26/2026 |
| 10.0.158 | 356 | 5/25/2026 |