private ShoppingCart(ShoppingCartSnapshot snapshot) { this.userId = snapshot.UserId; this.items = new List<ShoppingCartItem>(); this.totalAmountAfterDiscount = snapshot.TotalAmountAfterDiscount; snapshot.Items.ForEach(itemSnapshot => { items.Add(ShoppingCartItem.FromSnapshot(itemSnapshot)); }); }
public ShoppingCartSnapshot CreateSnapshot() { List<ShoppingCartItemSnapshot> itemsSnapshot = new List<ShoppingCartItemSnapshot>(); items.ForEach(item => { itemsSnapshot.Add(item.CreateSnapshot()); }); ShoppingCartSnapshot snapshot = new ShoppingCartSnapshot { TotalAmountAfterDiscount = this.totalAmountAfterDiscount, Items = itemsSnapshot, UserId = this.userId }; return snapshot; }
public static ShoppingCart FromSnapshot(ShoppingCartSnapshot snapshot) { return new ShoppingCart(snapshot); }