0

我正在创建一个示例来说明用于旧版 .NET WebForms 应用程序的 MVP(监督控制器和被动视图)模式。为了帮助分离一些关注点,我还将根据需要简单地引入 StructureMap 以将表示层与 DAO/Repositories 连接起来。

我的问题是应用程序的哪一部分应该调用这些ObjectFactory.GetInstance<T>()方法?我一直在 View 中调用它们,因为 View 通知了其相应的演示者,如下所示:

partial class CustomerDetails : Page, ICustomerDetailsView
{
    private readonly CustomerDetailsPresenter _presenter;

    public CustomerDetails() 
    {
        var rep = ObjectFactory.GetInstance<ICustomerRepository>();
        this._presenter = new CustomerDetailsPresenter(this, rep);
    }

    // do work down here with normal ASP.NET events...
}

但我不确定是否有更好的地方来处理对象创建;把它放在视图中几乎让我觉得好像视图对正在发生的事情了解太多(它了解存储库和 StructureMap,而不仅仅是了解演示者),但我想不出任何其他地方有这种代码应该存在。

4

1 回答 1

1

是使用结构图和 asp.net webforms 的一个很好的例子

于 2012-05-21T20:13:51.777 回答