【发布时间】:2014-09-06 01:55:14
【问题描述】:
不确定标题是否有意义,但这是我能想到的最好的,所以让我解释一下。我正在重构,主要是重写和简化我的解决方案中的一个项目,其中包含一堆基本上包含我的业务逻辑的“服务”。有一堆服务,每个服务都支持我的实体框架实现中的一个特定对象。我面临的问题是每个服务都可能依赖于其他服务,这些服务可能依赖于其他服务,也可能依赖于调用服务。事实上,我实际上在旧版本的代码中遇到了循环依赖,我通过欺骗它并声明类的通用版本来解决这个问题。它有效,但我不是很喜欢它。
通过重写,我想解决循环依赖发生的可能性,但我遇到的问题是所有服务都需要将存储库注入其中。目前 Ninject 为我负责,并且可能在构建对象时将相同的存储库注入所有这些,但我不确定如何维护 Ninject 为所有服务处理的依赖关系,并以某种方式避免循环的可能性参考文献。
我正在寻找有关如何解决这个难题的建议。
【问题讨论】:
标签: c# .net ninject circular-dependency