让我有两个非常基本的对象,如:依赖注入与循环依赖
public class View
{
public View(Controller controller)
{
// Use the model exposed by the controller here
}
}
public class Controller
{
private readonly IView view;
public Controller()
{
this.view = new View(this);
}
public Controller(View v)
{
this.view = v;
}
}
后来我决定要注入View对象为通过DI控制器但是我有一个循环依赖(即我不能使用var ctrl = new Controller(new View(ctrl));
)。在这种情况下,你会如何注入依赖项?
你打算对一个控制器有多个视图吗? –
只有一个。尽管如此,我试图在这种情况下避免属性注入。 –
那么为什么要添加DI分辨率来查看?视图和控制器之间会有1:1的关系。对不起,我没有看到它的重点。 –