Dependency injection 遗留代码&;依赖注入-在让两者通信时是否有任何折衷?
我正在处理一个由大量遗留代码组成的项目。对于legacy,我主要指的是包含应用程序所有业务逻辑的大型类库。此业务逻辑由相互关联的类组成。对于互连,我的意思是类的实例直接在其他类中创建(Dependency injection 遗留代码&;依赖注入-在让两者通信时是否有任何折衷?,dependency-injection,ninject,legacy-code,Dependency Injection,Ninject,Legacy Code,我正在处理一个由大量遗留代码组成的项目。对于legacy,我主要指的是包含应用程序所有业务逻辑的大型类库。此业务逻辑由相互关联的类组成。对于互连,我的意思是类的实例直接在其他类中创建(new) 此应用程序的较新部分在不同的类库中使用依赖项注入。不幸的是,这些类库需要访问遗留代码,因此: 这些新类库和旧的遗留类库之间存在依赖关系 旧类的一些实例是在新类中创建的(new) 一切都是完美的,因为没有旧代码需要访问新代码的地方。直到现在。让我解释一下: 旧代码中的类可以执行某些类型的计算 新代码中
new
)
此应用程序的较新部分在不同的类库中使用依赖项注入。不幸的是,这些类库需要访问遗留代码,因此:
- 这些新类库和旧的遗留类库之间存在依赖关系
- 旧类的一些实例是在新类中创建的(
)new
- 旧代码中的类可以执行某些类型的计算
- 新代码中的类可以进行其他类型的计算
作为DI容器,我正在使用Ninject,我也尝试了属性注入,但它不起作用。我猜是因为,如果包含该属性的类由DI容器实例化,则该属性将被注入。如果您可以使用重新格式化问题,这样我们就可以更清楚地了解当前问题,这将是非常棒的。目前的解释给解释留下了太多的空白。一个简单的代码示例会有所帮助。您能够修改旧代码库吗?