public CreateEntityValidator(IEntitiesRepository <ObjectIdentifier> entitiesRepository) { this.RuleFor(e => e.Name) .NotEmpty() .Must(name => entitiesRepository.Find(new FindEntityByName(name)) == null) .WithMessage("Entity with this name already exists"); this.RuleFor(e => e.Description).NotEmpty(); }
protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); foreach (var entity in entitiesRepository.Find()) { modelBuilder.Entity(entity.ToType()); } }
public UpdateEntityValidator(IEntitiesRepository <ObjectIdentifier> entitiesRepository) { this.RuleFor(e => e.Id) .NotEmpty() .Must((command, id) => { if (!ObjectIdentifier.TryParse(id, out ObjectIdentifier entityId)) { return(false); } var entity = entitiesRepository.Get(entityId); return(entity != null); }) .WithMessage("Entity with such id doesn't exist"); this.RuleFor(e => e.Name) .NotEmpty() .Must(name => entitiesRepository.Find(new FindEntityByName(name)) == null) .WithMessage("Entity with such name already exists"); this.RuleFor(e => e.Description).NotEmpty(); }
public EntityModel Find(long id) { return(_repository.Find(id)); }