我有 Nancy 和 Nancy.Bootstrappers.Ninject 的简单应用程序。我们必须使用 Ninject,因为 Web 应用程序是已经使用 Ninject 的更大应用程序集的一部分。
我尝试了不同的设置:
- 只是
Nancy
和Nancy.Bootstrappers.Ninject
- With
Ninject.Web.Common
,HttpModules
使用 web activator注册两个 - 通过覆盖
GetApplicationContainer()
并返回创建的内核Ninject.Web.Common
绑定很简单
protected override void ConfigureRequestContainer(IKernel kernel, NancyContext context)
{
kernel.Bind<IRepository>().To<Repository>().InRequestScope();
}
并且位于我的自定义 Nancy 引导程序中。IRepository
扩展IDisposable
,当然。
但是这些设置都不是Dispose()
我Repository
调用的方法。
Dispose()
设置请求完成后调用的每个请求绑定的正确方法是什么?