asp.net-mvc-4 - Ninject 和惰性依赖注入(inject) mvc 4.5

标签 asp.net-mvc-4 dependency-injection ninject.web.mvc

我已经开始使用 Ninject 开发网站并在项目中设置 DI。

我注意到您在名为 ninjectWebCommon 的 app_start 中注册了绑定(bind)依赖项。当项目加载时,所有依赖项是否都已注册?例如,如果您注册了超过 50 个依赖项,这会导致资源问题吗?或者每个实例是否在页面执行时注册?如果没有,是否有办法延迟绑定(bind)依赖项,或者这是不必要的?

即使使用另一个 IOC 容器,是否有更好的方法来完成此任务?

最佳答案

您应该阅读 Register Resolve Release pattern 。基本上注册过程非常简单,您告诉容器使用哪些类型来解析抽象。在此过程中不会创建任何对象。当请求到达您的应用程序时,DI 容器会创建实例。它们可能仅创建一次或在每次请求时创建,具体取决于生命周期。

关于asp.net-mvc-4 - Ninject 和惰性依赖注入(inject) mvc 4.5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20991026/

相关文章:

asp.net-mvc-4 - Ninject.MVC WebViewPage _Layout.cshtml 注入(inject)为空

asp.net-core - 依赖倒置原则。为什么我可以访问 ASP.NET Core 5 中非直接引用项目的类?

javascript - $rootScope 未定义

.net - "Reverse-Resolution"带有 Ioc 容器?

asp.net-mvc-3 - 用于网站和 Api 的 Ninject - 序列不包含元素

css - 并排对齐 INPUT 和 DIV

c# - WebAPI - 在 Controller 上未找到任何操作

asp.net-mvc - 如何在jqgrid中创建两个页脚行

asp.net - 在 ASP.NET Web API 中的操作方法上方指定 ActionName 有什么好处?

asp.net-mvc - 将 ninject 与 Ninject.Web.Api 用于 Web Api 2 一起使用在 ASP.NET MVC 5 中不起作用