加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

依赖注入 – 如何在Ninject 2中使用Common Service Locator

发布时间:2020-12-14 00:49:45 所属栏目:百科 来源:网络整理
导读:Changes in Ninject 2说 Ninject支持 Common Service Locator,但是怎么用呢?我没有找到任何手册或样品. Ninject2下载包含一个CommonServiceLocator.NinjectAdapter.dll(在zip文件的’extensions’文件夹中).将此dll和Ninject.dll添加到您的项目中. 在应用程
Changes in Ninject 2说 Ninject支持 Common Service Locator,但是怎么用呢?我没有找到任何手册或样品.
Ninject2下载包含一个CommonServiceLocator.NinjectAdapter.dll(在zip文件的’extensions’文件夹中).将此dll和Ninject.dll添加到您的项目中.

在应用程序的启动路径中(配置Ninject内核后),可以使用以下代码:

IKernel ninject = ...; 

var locator = new NinjectServiceLocator(ninject);

ServiceLocator.SetLocatorProvider(() => locator);

请注意,公共服务定位器(CSL)是一个库,它提供了IoC容器的抽象,并包含一个静态外观(实现了服务定位器模式).开发人员可以根据具体的IoC实现来防止这种接口. CSL对框架开发人员尤其有用.应用程序开发人员更好地使用依赖注入(DI)模式.当正确使用DI时,不需要在应用程序中使用CSL.虽然CSL更适合于框架开发,即使在那里我发现使用CSL有问题.相信大多数时候,通过适当的设计可以消除这种通用界面的使用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读