asp.net-mvc – 全局访问Ninject内核
发布时间:2020-12-15 20:13:26 所属栏目:asp.Net 来源:网络整理
导读:这个问题与Ninject没有具体的关系.这更像是一般的编码问题,但是我发布在这里,以防万一可能有更好的方法来处理Ninject中的问题,而不是我想要做的. 我想知道是否可以从Global.asax中的实例全局访问Ninject Standard Kernel. 这是代码: public class MvcApplic
这个问题与Ninject没有具体的关系.这更像是一般的编码问题,但是我发布在这里,以防万一可能有更好的方法来处理Ninject中的问题,而不是我想要做的.
我想知道是否可以从Global.asax中的实例全局访问Ninject Standard Kernel. 这是代码: public class MvcApplication : NinjectHttpApplication { protected override void OnApplicationStarted() { base.OnApplicationStarted(); // MVC global registration,routing and filtering code goes here... } protected override IKernel CreateKernel() { return Container; } private static IKernel Container { get { IKernel kernel = new StandardKernel(); kernel.Load(new ServiceModule(),new RepositoryModule()); return kernel; } } } 如果我有一些类,例如,不与控制器接口的外观类,我想要开始一个依赖关系链,我的理解是我应该使用: _className = kernel.Get<IClassName>(); 但是,我知道这样做的唯一方法是创建Ninject Standard内核的新实例,但是如果我理解正确,则创建Ninject内核的新实例不是一个好主意,因为这基本上是创建第二个内核. 那么,是否可以访问在应用程序启动时在Global.asax中实例化的现有内核,从我的应用程序的任何地方,还是有更好的方法来完成这个? 问候, 弗雷德庄园 解决方法
最简单的方法(IMO):
_className = (IClassName)System.Web.Mvc.DependencyResolver.Current.GetService(typeof(IClassName)); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- msbuild – 如何为ASP.NET 5项目设置TeamCity构建
- asp.net-mvc-3 – 如何验证HTML输入以防止XSS?
- ASP.NET MVC 3助手中的Tab命令
- wcf – OData是否违反了关注点?
- asp.net-mvc – NUnit中的MbUnit的行属性?
- asp.net-mvc – Azure App Service Web App编译错误
- 优化asp.net身份GetUserManager
- asp.net-mvc-3 – 获取所有聚合根实体子实体?
- 有没有相当于PrimeFaces for ASP.NET的东西?
- asp.net-3.5 – 我可以查看soap wcf调用发出的原始请求
推荐文章
站长推荐
- asp.net-mvc – 从ModelMetaData获取另一个属性的
- asp.net-membership – 覆盖ASP.NET MVC 4中的AS
- asp.net-mvc – 是否有可能在每次验证后使ASP.NE
- 电子邮件 – 邮箱不可用,客户端没有权限作为此发
- asp.net-mvc – 现有的MVC网站 – 集成Telerik M
- asp.net – 如何在Quartz.Net中处理应用程序关闭
- asp.net-mvc – Sitecore:添加到此处按钮未显示
- ASP.NET中没有会话状态的用户身份验证
- 为什么这会考虑不好的做法?或者是吗? (ASP.Net
- asp.net-mvc – ASP.NET MVC检查角色里面的视图
热点阅读