public IView HandleRequest(Customer customer, string action, int id) { switch (action) { case null: return(booksViewFactory.CreateView(store)); case "Detail": var book = store.GetBook(id); if (book == null) { return(null); } else { return(booksDetailViewFactory.CreateView(book)); } default: return(null); } }
public IView HandleRequest(Customer customer, string action, int id) { ActionId actionId; if (action == null) { action = ""; } if (!actionMap.TryGetValue(action, out actionId)) { return(null); } if (actionId != ActionId.ListAll) { var book = store.GetBook(id); if (book == null) { return(null); } if (actionId == ActionId.Add) { customer.ShoppingCart.Add(book); } else if (actionId == ActionId.Remove) { if (!customer.ShoppingCart.Remove(book)) { return(null); } } } return(shoppingCartViewFactory.CreateView(customer.ShoppingCart, store)); }