Reo.Core.Validation
10.0.277
dotnet add package Reo.Core.Validation --version 10.0.277
NuGet\Install-Package Reo.Core.Validation -Version 10.0.277
<PackageReference Include="Reo.Core.Validation" Version="10.0.277" />
<PackageVersion Include="Reo.Core.Validation" Version="10.0.277" />
<PackageReference Include="Reo.Core.Validation" />
paket add Reo.Core.Validation --version 10.0.277
#r "nuget: Reo.Core.Validation, 10.0.277"
#:package Reo.Core.Validation@10.0.277
#addin nuget:?package=Reo.Core.Validation&version=10.0.277
#tool nuget:?package=Reo.Core.Validation&version=10.0.277
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 (>= 2026.2.0)
- Microsoft.Extensions.Configuration (>= 10.0.10)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Options (>= 10.0.10)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.10)
- stbychkov.AutoLoggerMessage (>= 1.0.17)
- Swashbuckle.AspNetCore (>= 10.2.3)
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.277 | 0 | 7/24/2026 |
| 10.0.276 | 75 | 7/23/2026 |
| 10.0.275 | 93 | 7/23/2026 |
| 10.0.274 | 181 | 7/22/2026 |
| 10.0.273 | 204 | 7/22/2026 |
| 10.0.272 | 176 | 7/22/2026 |
| 10.0.271 | 211 | 7/21/2026 |
| 10.0.270 | 212 | 7/21/2026 |
| 10.0.269 | 222 | 7/21/2026 |
| 10.0.268 | 216 | 7/21/2026 |
| 10.0.267 | 239 | 7/21/2026 |
| 10.0.266 | 317 | 7/20/2026 |
| 10.0.265 | 302 | 7/20/2026 |
| 10.0.264 | 285 | 7/20/2026 |
| 10.0.262 | 371 | 7/17/2026 |
| 10.0.261 | 371 | 7/17/2026 |
| 10.0.260 | 336 | 7/16/2026 |
| 10.0.259 | 337 | 7/16/2026 |
| 10.0.258 | 309 | 7/16/2026 |
| 10.0.257 | 313 | 7/16/2026 |