Simple Injector注入父实例

时间:2015-06-30 02:25:06

标签: c# inversion-of-control simple-injector

我正在使用自定义mvp框架,在创建视图时,它会尝试解析它的正确演示者并创建它的新实例,但是演示者需要视图的构造函数。

有没有办法使用简单的注入器将视图的依赖关系注入到演示者的构造函数中?

我尝试过使用生命周期作用域,但是,由于视图在自己的构造函数中解析/创建了演示者,所以当它创建演示者的实例并注入新实例并创建一个infite时,它似乎尚未解析循环和堆栈溢出异常

编辑:

代码看起来像这样:

public class MyView1 : IView
{
    protected IPresenter<MyView> presenter;

    public MyView1()
    {
       /// some cocde here;
       presenter = ResolvePresenterBinding();
    }

    IPresenter<MyView> ResolvePresenterBinding()
    {
       //some stuff here to resolvethe apropiate Presenter and create the instance using the IOC Container
    }    
}

public interface IPresenter<TView> where TView : IView
{
}

public class MyPresenter1 : IPresenter<MyView>
{
    IView View;
    public MyPresenter1(IView view, //other dependencies here)
    {
        this.View = view;
    }
}

0 个答案:

没有答案