Jam*_*ers 6 dependencies dependency-injection
在我的代码中,我有以下对象:
在我正在进行的项目中,ErrorManager需要使用ConfigManager实例提取配置信息,而ConfigManager使用ErrorManager时会发生错误.
目前,我在代码中执行以下操作:
ErrorManager _errorManager = new CustomErrorManager();
ConfigManager _configManager = new CustomConfigManager(_errorManager);
_errorManager.SetConfigurationManager(_configManager);
Run Code Online (Sandbox Code Playgroud)
有没有办法让我清理这个依赖关系的循环引用?
我会创建以下内容:
ErrorConfig _errorConfig = ...;
// ErrorConfig is a new config object containing only ErrorManager Configuration
ErrorManager _errorManager = new CustomErrorManager(_errorConfig);
ConfigManager _configManager = new CustomConfigManager(_errorManager);
Run Code Online (Sandbox Code Playgroud)
现在,ConfigManager可以使用准备运行的 ErrorManager,而不会出现ErrorManager未准备好处理错误的引导问题。
| 归档时间: |
|
| 查看次数: |
778 次 |
| 最近记录: |