NEventStore的Nanocontainer课程背后有故事吗? 是否存在与其他IoC的关系依赖关系,还是由NEventStore本身的作者从头开始编写的?
我问这个是因为我喜欢这个类的智能方法,它似乎是一个非常轻量级的IoC容器并且非常容易理解。
如果有一个只有这个功能的独特包,那就没关系了。
答案 0 :(得分:2)
你的问题是只有NEventStore的开发人员才能真正回答,但是从available source code很容易发现实现非常简约,并且“缺乏”很多功能使它成为'真正'的DI容器。据我所知,代码并不是真正基于任何现有容器,尽管基本上所有容器看起来都很相似。
NanoContainer
实现旨在实现NEventStore本身所需的足够功能或用户在更改框架的默认行为时所需的功能。
可以讨论DI库应该具有什么功能才能成为“真正的”DI容器,但IMO应该至少能够自动连接类型(其中依赖关系会根据构造函数的参数自动注入构造函数中) )。 NanoContainer
不支持此功能。它缺乏的其他功能是:
当然,您是否需要这些功能取决于很多因素。