Недавно я решил удалить кучу фильтров уровня действия в контроллере и заменить их одним фильтром уровня контроллера.
Теперь я получаю это сообщение об ошибке.
Error activating LogActionFilter
More than one matching bindings are available.
Activation path:
1) Request for LogActionFilter
Suggestions:
1) Ensure that you have defined a binding for LogActionFilter only once.
Я уверен, что ошибка связана с двойным связыванием фильтра действий, потому что это то, что я изменил. Однако, когда я просматриваю документацию здесь , я вижу, что она определяет / делает то же самое. Так что я действительно не уверен, что делаю не так.
Мой образец контроллера
[LogAction]
public class SomeController : Controller
{
public ActionResult SomeAction()
{
}
}
мой регистрационный код
public static void RegisterFilters()
{
Kernel.BindFilter<LogActionFilter>(FilterScope.Controller, 0)
.WhenControllerHas<LogActionAttribute>();
Kernel.BindFilter<LogActionFilter>(FilterScope.Action, 0)
.WhenActionMethodHas<LogActionAttribute>();
}