Phema.Validation.Expressions
2.0.1
The owner has unlisted this package.
This could mean that the package is deprecated, has security vulnerabilities or shouldn't be used anymore.
dotnet add package Phema.Validation.Expressions --version 2.0.1
NuGet\Install-Package Phema.Validation.Expressions -Version 2.0.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Phema.Validation.Expressions" Version="2.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Phema.Validation.Expressions" Version="2.0.1" />
<PackageReference Include="Phema.Validation.Expressions" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Phema.Validation.Expressions --version 2.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Phema.Validation.Expressions, 2.0.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Phema.Validation.Expressions@2.0.1
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Phema.Validation.Expressions&version=2.0.1
#tool nuget:?package=Phema.Validation.Expressions&version=2.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Phema.Validation
// Add
services.AddPhemaValidation(configuration => configuration.AddComponent<Model, ModelValidationComponent>());
// Get
var validationContext = serviceProvider.GetRequiredService<IValidationContext>();
// Use
validationContext.When("key", "invalid value")
.Is(value => value == "invalid value")
.AddError<ModelComponent>(component => component.ValueIsInvalid);
- You can add to
Is
callback any condition you want or even multiple of them (they will join using AND) - You should store validation templates in your custom
IValidationComponent
's - You should use
ValidationTemplate
,ValidationTemplate<TArg1>
,ValidationTemplate<TArg2>
etc. or write your custom withIValidationTemplate
- You can check if context is valid by calling
IsValid
/EnsureIsValid
onIValidationContext
Phema.Validation.Conditions
validationContext.When("key", "invalid value")
.IsEqual("invalid value")
.AddError<ModelComponent>(component => component.ValueIsInvalid);
- You can use predefined conditions like IsNot, IsNull, IsEmpty, IsEqual etc.
Phema.Validation.Expressions
validationContext.When(model, m => m.Value)
.IsEqual("invalid value")
.AddError<ModelComponent>(component => component.ValueIsInvalid);
- You can validate model value using expression manner
- You can override key by using
[DataMember(Name = "key")]
attribute - You can check if context is valid by calling
IsValid(model, m => m.Value)
/EnsureIsValid(...)
onIValidationContext
Phema.Validation.Mvc
services.AddPhemaValidation(c => c.AddValidationComponent<Model, ModelValidation, ModelValidationComponent>())
.AddMvcCore()
.AddPhemaValidationIntegration();
- You can use
IValidator<TModel>
to validate mvc input - You should use
AddPhemaValidationIntegration
to setup mvc
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
.NET Core | netcoreapp2.2 is compatible. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETCoreApp 2.2
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 2.2.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 2.2.0)
- Phema.Validation (>= 2.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|