将Ninject v2与Asp.net Webforms集成的问题

Lee*_*Lee 5 c# webforms ninject

我正在尝试将Ninject v2与我的asp.net webforms项目集成.我正在运行.NET Framework 4.0.

我的global.asax继承自Ninject.Web.NinjectHttpApplication.我还添加了CreateKernel方法:

protected override IKernel CreateKernel()
{
  IKernel kernel = new StandardKernel();
  kernel.Bind<IUser>().To<User>();
  return kernel;
}
Run Code Online (Sandbox Code Playgroud)

我的所有页面都继承自Ninject.Web.PageBase.我还在web.config中添加了以下httpmodule条目:

<add name="NinjectHttpModule" type="Ninject.Web.NinjectHttpModule, Ninject.Web">
Run Code Online (Sandbox Code Playgroud)

但是,当我运行应用程序时,会触发InvalidOperationException以及以下内容:

"ASP.login_aspx类型请求注入,但没有为Web应用程序注册内核.请确保您的项目定义了NinjectHttpApplication."

我究竟做错了什么?

亲切的问候

背风处

Vad*_*dim 0

我相信您还需要注册 HttpApplicationInitializationModule

<add name="HttpApplicationInitializationModule" type="Ninject.Web.Common.HttpApplicationInitializationModule, Ninject.Web.Common"/>
Run Code Online (Sandbox Code Playgroud)