Внедрить службу в пользовательский RequiredAttribute WebApi 2 - PullRequest
0 голосов
/ 24 мая 2019

У нас есть приложение webapi, и мы должны проверить, заполнено ли свойство для типа роли пользователя, поэтому нам нужен доступ к сервису, чтобы получить userRoles.

Мы создаем модель со свойством, таким какэто:

[RequiredIf(RoleEnum.Test)]
public string reason {get; set;]

и RequiredIfAttribute это:

public class RequiredIfAttribute : RequiredAttribute 
{
    public IUserService UserService { get; set; }

    private readonly RoleEnum roleRequired;

    public RequiredIfAttribute(RoleEnum roleRequired)
    {
        this.roleRequired = roleRequired;
    }

    protected override ValidationResult IsValid(object value, ValidationContext context)
    {
        var currentUser = UserService.GetCurrentUser();
    }
}

Как впрыскивать IUserService в RequiredAttribute?

Я впрыскиваю в ActionFilterAttribute сне знаю, но я не знаю, как вводить в RequiredAttribute.

...