使用Web API正确实现Ninject过滤器绑定

时间:2012-10-01 17:59:14

标签: asp.net-mvc-4 asp.net-web-api ninject

绑定到过滤器时,我应该使用BindFilter中包含的Ninject.Web.WebApi扩展方法或下面的新约定,还是两者兼而有之?

GlobalConfiguration.Configuration
      .Filters.Add(new ApiValidationFilter(kernel.Get<IApiAuthenticationService>()));

我现在正在使用后者,但不断收到以下错误消息。在添加web-api过滤器之前,我没有在我的项目中得到这个。

  

由于已经处理了DbContext,因此无法完成操作。

1 个答案:

答案 0 :(得分:0)

我最终不得不诉诸。

            var apiRepository = new ApiRepository(new DatabaseFactory());
            var apiAuthenticationService = new ApiAuthenticationService(apiRepository, new UnitOfWork(new DatabaseFactory()), new ValidationProvider(null));