private Task AddResource(EntityResourceKind kind) { var entity = new ApiLocalizedResource { ResourceKind = kind }; Model.Resources.Add(entity); HandleModificationState.EntityCreated(entity); return(Task.CompletedTask); }
public EntityResourceValidator(ILocalizable <T> model, EntityResourceKind kind, IStringLocalizer localizer) { RuleFor(m => m.CultureId).NotEmpty().WithMessage(localizer["The culture is required."]); RuleFor(m => m.CultureId).IsUnique(model.Resources.Where(r => r.ResourceKind == kind)).WithMessage(localizer["The culture must be unique."]); }
public ClientResourceUriValidator(ILocalizable <ClientLocalizedResource> model, EntityResourceKind kind, IStringLocalizer localizer) : base(model, kind, localizer) { RuleFor(m => m.Value).Uri().WithMessage(m => localizer["{0} is not a valid uri.", m.Value]); }
protected virtual string LocalizeEntityProperty <TEntityResource>(ILocalizable <TEntityResource> entity, string value, EntityResourceKind kind) where TEntityResource : IEntityResource { return(entity.Resources.FirstOrDefault(r => r.ResourceKind == kind && r.CultureId == CultureInfo.CurrentCulture.Name)?.Value ?? value); }