我遇到了一些障碍,希望有人能指出我哪里出错了。
我一直在使用 Ninject 注入自定义 ActionFilterAttributes ,这工作正常:
kernel.BindFilter<CriticalErrorAttribute>(FilterScope.Last, 1);
我现在正在尝试注入自定义 AuthorizeAttribute。我的语法正确,因此我插入了 Role 和自定义属性:
kernel.BindFilter<Authorisation>(FilterScope.Action, 0)
.WhenActionMethodHas<Authorisation>()
.WithPropertyValueFromActionAttribute<Authorisation>("Roles", n => n.Roles)
.WithPropertyValueFromActionAttribute<Authorisation>("Years", n => n.Years);
该属性正在正确执行并且角色和年份被正确插入,我的问题是我试图注入的服务始终为空:
[Inject]
public IUserServices userService { get; set; }
在正常的 ActionFilterAttributes 中,服务被很好地注入,但这里不是。
任何帮助,将不胜感激