Mvpパターンasp.net

jqueryによって呼び出される静的webmethodを含むproductList.aspxというページがあります。 このページにはIProductListViewを実装するproductlist.ascxユーザーコントロールが含まれています。 productlist.ascxには、addtobasket.ascx(IAddToBasketViewの実装)usercontrolが含まれ、バスケットに追加するボタンを含み、AddToBasketPresenterに関連付けられています。メソッド呼び出しは実際にはproductlist.aspxページからaddToBasket.ascx usercontrolになります。

1つの問題は、addtobasketpresenterがjquery呼び出し(json)であるため、インスタンス化されていないと常に不平を言います。 mvpのアーキテクチャは適切ですか?どうしたらいいの?

public partial class Product_ProductList : Page
{



  [webmethod]
  protected Basketsummaryview AddToCart()
   {  
     UC_Product_ProductList uc=new UC_Product_ProductList();
     uc.AddToBasket(ProductId);
   }
}

public partial class UC_Product_ProductList : UserControl,IProductlistview
{
   private ProductListPresenter _presenter;
    protected Basketsummaryview AddToCart(int productid)
   {  
     uc_addtocart uc=new UC_addtocart();
      uc.Addtocart()

  }


 public partial class UC_addtocart : UserControl,IAddtocartview
{
   private AddTocartPresenter _presenter;
   Pageinit(object sender,e
    protected Basketsummaryview AddToCart(int productid)
   {  

      _presenter.Addtocart()

  }


protected override void OnInit(EventArgs e)
{
    InitializeComponent();
    base.OnInit(e);
}

private void InitializeComponent()
{
    Init += PageInit;
    Load += PageLoad;
}
protected void PageInit(object sender, EventArgs e)
{

    _presenter = new ProductListPresenter(this);
}

protected void PageLoad(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        _presenter.Display();

    }
}
}
0
デザインをより明確にするためのサンプルコードを投稿してください。
追加された 著者 Wouter de Kort,
投稿したコードは読みにくいです。 3つの別々の部分に分割してコンパイルエラーがないことを確認できましたか?デバッガを使って実行してみてください。ページライフサイクルの正しいイベントでプレスセンターを初期化することを確認してください。
追加された 著者 Wouter de Kort,
@WouterdeKortはコードを確認してください
追加された 著者 arjun,
誰かがこのパターンで私を助けてくれますか?
追加された 著者 arjun,
誰かがこのパターンで私を助けることができますか?
追加された 著者 arjun,
isはmvpパターンの正しい使い方です。
追加された 著者 arjun,

答えはありません

0