Install-Package Mindfire.Binding -Version 1.1.0
dotnet add package Mindfire.Binding --version 1.1.0
<PackageReference Include="Mindfire.Binding" Version="1.1.0" />
paket add Mindfire.Binding --version 1.1.0
#r "nuget: Mindfire.Binding, 1.1.0"
// Install Mindfire.Binding as a Cake Addin #addin nuget:?package=Mindfire.Binding&version=1.1.0 // Install Mindfire.Binding as a Cake Tool #tool nuget:?package=Mindfire.Binding&version=1.1.0
This package is a collection of tools to make binding and validation easier. It borrows from the blog by David Britch on validating Xamarin Forms, but has been slightly extended. This can also be used in platforms other than Xamarin Forms. The original code can be found here: https://github.com/dotnet-architecture/eShopOnContainers/blob/1b7200791931f33c94206822a69644ca820bb0dc/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Validations/ValidatableObject.cs. This package includes the following:
An object used to hold a value and validation rules. It supports INotifyPropertyChanged, and so will update the UI or allow devs to be notified when any of its properties are updated.
Value: The value that should be stored in the object. This is what is used against validations.
IsValid: Whether or not the object passes all validation rules
IsInvalid: The opposite of IsValid
Errors: IEnumerable<string> that contains all messages from the collection of errors
AllErrors: The result of running string.Join on the Errors property
Validations: ICollection<IValidationRule<T>>. Collection of rules that should be used to validate the object's value
Validate(): Method to manually cause the object to validate the current value
An interface that is used to run validations.
ValidationMessage: This property should be set to whatever you want shown when a validation fails. This is what is returned in the
Errorsproperty of the ValidatableObject.
Check(T value): The method used to check a given value. This returns a boolean that indicates validity. Use this to run whatever code you need to check validity (e.g. for email addresses, credit cards, etc.).
- No dependencies.
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
Added IsInvalid and AllErrors properties to the ValidationObject