init backend

This commit is contained in:
2026-02-04 21:11:51 +01:00
parent 537d49e797
commit b73fd8eb05
31 changed files with 673 additions and 0 deletions

View File

@@ -0,0 +1,24 @@
using AipsCore.Domain.Abstract.Rule;
using AipsCore.Domain.Common.Validation;
namespace AipsCore.Domain.Abstract.ValueObject;
public abstract record AbstractValueObject
{
protected abstract ICollection<IRule> GetValidationRules();
protected void Validate()
{
var rules = GetValidationRules();
var validator = new Validator(rules, ValueObjectName);
validator.Validate();
if (!validator.Success)
{
throw validator.GetValidationException();
}
}
private string ValueObjectName => this.GetType().Name;
}