在MVP模式中我需要多少演示者?

本文关键字:多少 MVP 模式 | 更新日期: 2023-09-27 18:03:57

我正在尝试理解c# winforms中的MVP模式。
我的问题是我是否必须为每个实体创建演示器类?例如:在我的应用程序中,我有:

  • Form1,以这种形式Students将在Listbox
  • 上列出
  • Form2,以这种形式Orders将在Listbox
  • 上列出
  • Form3,以这种形式Details将在列表框
  • 上列出

那么在我的Presenter应用程序中我需要创建吗?:

StudentPresenter.cs
OrderPresenter.cs
DetailsPresenter.cs

如果是,假设我在Form1中有一个按钮,当我单击该按钮时,我想显示Form2。我下面的代码是真的吗?

    private void showForm2_Click(object sender, EventArgs e)
    {
        var orderForm= new Form2();
        var orderRepo= new OrderRepository();
        var orderPresenter = new OrderPresenter(orderForm, orderRepo);
        //How I show Form2 ?
    }

在MVP模式中我需要多少演示者?

通常,到目前为止,我所看到的使用mvp模式是每个视图使用一个演示者,换句话说,不管你有多少模型,数量与演示者的数量是分离的。另外,在我之前工作的项目中,在切换到MVVM之前,严格遵守One-Presenter-Per-View。

这个问题在这里已经以这样或那样的形式被问了好几次了。