Ninject InRequestScope missing

自古美人都是妖i 提交于 2019-12-06 16:31:57

问题


Have a couple of questions regarding the latest version (2.2.1.4) of ninject.

Was trying to Bind a Linq2sql DataContext to a concrete implementation InRequestScope (in a class library project)

Bind<DataContext>().To<MoneywatchDataContext>()

but could not find InRequestScope method

ended up doing this,

Bind<DataContext>().To<MoneywatchDataContext>().InScope(ctx => HttpContext.Current)

Just wanted to find out if:

  1. If this will behave exactly like the InRequestScope Method.
  2. That it will gurantee that when my HTTContext.Current is GC'ed the underlying DataCotext will be disposed as well.

回答1:


Most likely you reference a no web version of Ninject. Replace it with the normal version and you will have the InRequestScope extension method.




回答2:


InRequestScope is available as extension method in Ninject.Web.Common. So if installed earlier through Nuget (Ninject package) now we might need to install additional nuget package Ninject.Web.Common




回答3:


using Ninject.Web.Common;    // that's most likely all you need


来源:https://stackoverflow.com/questions/6911894/ninject-inrequestscope-missing

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!