asp.net-mvc-4 – 将ninject dependecyResolver用于MVC和WebAPI
发布时间:2020-12-16 00:19:06 所属栏目:asp.Net 来源:网络整理
导读:我已创建和MVC 4 Web应用程序,并决定在此应用程序中使用web api. 我正在为MVC web应用程序使用ninject依赖解析器.现在我想对web api使用这个ninject依赖解析器. 但是这里提出的问题mvc IDependencyResolver名称空间是:使用System.Web.Mvc 和web api IDepend
我已创建和MVC 4 Web应用程序,并决定在此应用程序中使用web api.
我正在为MVC web应用程序使用ninject依赖解析器.现在我想对web api使用这个ninject依赖解析器. 但是这里提出的问题mvc IDependencyResolver名称空间是:使用System.Web.Mvc 和web api IDependencyResolver正在使用System.Web.Http.Dependencies 那我怎么解决这个问题呢? 最后我想要这样的东西: // Use the container and the NinjectDependencyResolver as // application's resolver var resolver = new NinjectDependencyResolver(container); //Register Resolver for MVC DependencyResolver.SetResolver(resolver); //Register Resolver for Web Api GlobalConfiguration.Configuration.DependencyResolver = resolver; 解决方法
有一种方法可以在MVC和ASP.NET Web API之间共享相同的容器.
您只需要实现两个接口. public class NinjectDependencyResolver : NinjectDependencyScope,IDependencyResolver,System.Web.Mvc.IDependencyResolver { private readonly IKernel kernel; public NinjectDependencyResolver(IKernel kernel) : base(kernel) { this.kernel = kernel; } public IDependencyScope BeginScope() { return new NinjectDependencyScope(this.kernel.BeginBlock()); } } 查看本文寻求解决方案: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 通过<%on .aspx页面绑定
- asp.net-mvc – 如何在ASP.NET MVC的所有操作中安装动作过滤
- asp.net – 获取Telerik RadScheduler当前视图的日期范围
- ASP.NET Core Project.json文件(5)
- asp.net – 最后修改标头在MVC
- asp.net-mvc – ASP.NET MVC中的Razor页面生命周期
- ASP.NET网站“发布”vs Web部署项目
- asp.net – 如何从URL抓取.aspx页面名称?
- Asp.net 4.0 Forms Authentication和FriendlyUrls
- 在ASP.Net中防止SQL注入