ASP.NET Web窗体 - 模型视图演示者和用户控件

And*_*rew 6 asp.net mvp webforms

我是新手使用MVP模式,我只是想确保从用户控件中调用演示者的最佳方式.

MyPage.aspx有一个演示者MyPresenter

该页面包含一个用户控件,它通过我从MyPage设置的属性接受MyPage的Presenter

MyUserControl.Presenter = this.Presenter
Run Code Online (Sandbox Code Playgroud)

我现在正试图在演示者中调用Method1,它会检索一些配置并在用户控件的视图上设置它.

Presenter.Method1(); // calls method and sets config to the view
Run Code Online (Sandbox Code Playgroud)

我的问题首先是

  1. 我应该以这种方式在用户控件中使用演示者吗?
  2. 如果是这样,通过用户控件访问视图值是否有效,如下所示.

    Presenter.View.MyData

我只是想确保我不会走这条完全错误的道路!

Mas*_*uso 4

我用来做的是为每个用户控件配备一个演示者,该演示者仅负责用户控件的演示,并为每个页面(.aspx)配备一个演示者。我认为将事物分开也有助于维护,因为您将拥有“瘦”演示者,它们只负责 UI 的一小部分。用户控件也将是“独立的”,您可以重用它们,因为表示逻辑与页面表示逻辑保持分离。

看看下面的帖子:

MVP 和 UserControls 以及调用