github.com/ninject/ninject.web.mvc/commit/...

дую за настройкой атрибута целого фильтра на этомстраница.

Для них у них есть:

.WithConstructorArgumentFromControllerAttribute<LogAttribute>(
      "logLevel", attribute => attribute.LogLevel);

Второй параметр ожидаетFunc<LogAttribute, object> callback, Их фактический список параметров настроен следующим образом:

Log(LogLevel = Level.Debug)

Но мой атрибут фильтра настроен следующим образом:

public class AuthAttribute : FilterAttribute { }

public class AuthFilter : IAuthorizationFilter
{

    private readonly IUserService userService;
    private string[] roles;

    //Stuck on the constructor also. How do I accept params?
    public AuthFilter(IUserService userService, params string[] roles)
    {
        this.userService = userService;
        this.roles = roles;
    }
    public void OnAuthorization(AuthorizationContext filterContext)
    {
        throw new NotImplementedException();
    }
}

Как-то это не так. Потому что я хочу, чтобы мой фильтр выглядел так:

[Auth("Admin", "Contrib")]

Мои привязки:

 kernel.BindFilter<AuthFilter>(FilterScope.Controller, 0)
            .WhenControllerHas<AuthAttribute>()
            .WithConstructorArgumentFromControllerAttribute<AuthAttribute>("roles", /*Stuck here*/)