在我的代码中,我有以下对象:
> ErrorManager – 控制错误的方式
已登录应用程序
> ConfigManager – 控制如何
获取配置信息
在我正在进行的项目中,ErrorManager需要使用ConfigManager实例提取配置信息,而ConfigManager使用ErrorManager时会发生错误.
目前,我在代码中执行以下操作:
ErrorManager _errorManager = new CustomErrorManager(); ConfigManager _configManager = new CustomConfigManager(_errorManager); _errorManager.SetConfigurationManager(_configManager);
有没有办法让我清理这个依赖关系的循环引用?
我会创建以下内容:
ErrorConfig _errorConfig = ...; // ErrorConfig is a new config object containing only ErrorManager Configuration ErrorManager _errorManager = new CustomErrorManager(_errorConfig); ConfigManager _configManager = new CustomConfigManager(_errorManager);
现在,ConfigManager可以使用准备运行的ErrorManager而不会出现引导问题,而ErrorManager还没有准备好处理错误.