Mvp Pattern asp.net

时间:2012-02-06 09:41:25

标签: asp.net mvp

我有一个名为productList.aspx的页面,其中包含由jquery调用的静态webmethod。 该页面包含实现IProductListView的productlist.ascx用户控件。 productlist.ascx再次包含addtobasket.ascx(实现IAddToBasketView)usercontrol,其中包含要添加到购物篮的按钮,并且与AddToBasketPresenter相关联。现在方法调用实际上是从productlist.aspx页面添加到addToBasket.ascx usercontrol。

一个问题是它总是抱怨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 个答案:

没有答案