如果我有一个需要访问5个不同存储库的视图,我现在正在这样做:
public class MyClass { private readonly IRepo1 rep1; private readonly IRepo2 rep2; ... public MyClass(IRepo1 r1, IRepo2 r2, IRepo3 r3, IRepo4 r4...) { rep1 = r1; rep2 = r2; re3 = r3; } }
这种方法的问题是构造函数越来越大,如果构造函数中的某些内容发生了变化,我必须在整个系统中编辑更改.如何避免这个问题?
我考虑过创建一个构建器类,它将负责创建存储库并将它们解析为视图.或者这是一个糟糕的方法?