城堡IOC - 解决循环引用

时间:2009-11-23 13:27:37

标签: c# castle-windsor castle

我的MVP实施的快速问题:

目前我有以下代码,其中演示者和视图都通过容器解析 然后,演示者调用View.Init将自己传递给视图。

我想知道是否有办法让容器修复我的循环引用(view - > presenter,presenter - > view)。

class Presenter : IPresenter {
   private View _view; 

   public Presenter(IView view, ...){
    _view = view;
    _view.Init(this)
   }
}

class View : IView {
 private IPresenter _presenter;
 public void Init(IPresenter presenter){
  _presenter = presenter;
 }
}

亲切的问候

弗雷德里克

2 个答案:

答案 0 :(得分:0)

您可以使用属性设置器,而不是将引用传递给构造函数。

答案 1 :(得分:-1)

只要将Presenter和View放在同一个csproject中,就不应该有任何循环引用