2009-11-23 6 views
3

빠른 문제 해결 : 성 IOC - 내 MVP 구현에 순환 참조를

현재 나는 발표자와보기 모두가 컨테이너를 통해 해결하는 아래의 코드를 가지고있다.
그러면 발표자는 자신을보기로 전달하기 위해 View.Init를 호출합니다.

그러나 컨테이너에 내 순환 참조 (보기 -> 발표자, 발표자 ->보기)를 고칠 수있는 방법이 있는지 궁금합니다.

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; 
} 
} 

종류는만큼 당신이 같은 csproject 내부 발표자와보기를 모두 넣어

프레데릭

+0

정확히 "내 순환 참조를 수정 하시겠습니까?" * 다른 말로하면 수정 프로그램이 무엇을 기대합니까? 어느 것이 다른 것에 대한 참조를 잃을까요? * –

답변

-1

과 관련, 어떤 순환 참조가 안

+1

이것은 코드 참조가 아닌 런타임 종속성 참조에 관한 것입니다. –

0

당신은 속성 setter를 사용할 수 있습니다 참조를 생성자에 전달하는 대신

관련 문제