Mvp

Model View Presenter

Model

public class ProductPresentationModel
{
    public string Title {get; set}
    public string Description{get;set;}
    public string AdditionalInformation { get; set;}
    public ReadOnlyCollection<Product> ChildSkuCollection {get; set;}
    public string ParentSku {get; set;}
    public Dictionary<Attribute, AttributeValue> AttributeTable {get; set;}
    public Dictionary<MediaType, Url> ProductMedia {get; set;}
}

View

public interface IProductView
{
    event EventHandler ViewInitialised;
    event AddToBasketHandler AddToBasketRequested;
    event ViewPreviewHandler ViewPreviewRequested;
    void RefreshView(ProductModel )    
}
public class Product : Page, IProductView
{
    public event EventHandler ViewInitialised;
    public event AddToBasketHandler AddToBasketRequested;
    public event ViewPreviewHandler ViewPreviewRequested;
 
    public void  UpdateYourself(ProductPresentationModel model )
    {
        this.TitleLabel.Text = model.Title;
        this.DescriptionLabel.Text = model.Description;
        this.ProductSelector.Products - model.ChildSkuCollection;
    }
}

Presenter

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License