这是一个常见的重构,我不相信我已经看到了一个捷径:
想象一下,我们有一个带有许多继承子类的基类.基类使用构造函数注入来接受许多服务:
class FooBase
{
private IMyService _myService;
private IMyOtherService _myOtherService;
public FooBase(IMyService myService, IMyOtherService _myOtherService)
{
_myService = myService;
_myOtherService = myOtherService;
}
}
class FooConcrete : FooBase
{
public FooConcrete(IMyService myService, IMyOtherService _myOtherService)
base(myService, myOtherService)
{
}
}
Run Code Online (Sandbox Code Playgroud)
注意FooConcrete如何调用其基类FooBase的构造函数.
现在,如果我想向FooBase添加另一项服务会怎样?我可以从FooBase的构造函数快速初始化新的私有字段.但我仍然需要四处手动更新从FooBase继承的每个子类.如果有很多继承类,这可能会很麻烦.
是否有快捷方式,或者我可以使用的技巧,以快速更新所有子类的构造函数?
| 归档时间: |
|
| 查看次数: |
586 次 |
| 最近记录: |