castle IOC - resolving circular references
quick question for my MVP implementation:
currently I have the code below, in which both the presenter and view are resolved via the container.
Then the presenter calls View.Init to pass himself to the view.I was wondering however if there is a way to let the container fix my circular reference (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;
}
}
Kind r开发者_如何学Goegards
Frederik
You could use a property setter instead of passing the reference into the constructor.
As long as you put both Presenter and View inside the same csproject, there shouldn't be any circular reference
精彩评论