/// <summary>
        /// Initializes the specified loyalty card.
        /// </summary>
        /// <param name="loyaltyCard">The loyalty card.</param>
        public override void Initialize(LoyaltyCard loyaltyCard)
        {
            Assert.ArgumentNotNull(loyaltyCard, "loyaltyCard");

            this.CardNumber = loyaltyCard.CardNumber;

            foreach (var point in loyaltyCard.RewardPoints)
            {
                var result = new LoyaltyRewardPointItemJsonResult();
                result.Initialize(point);
                this.RewardPoints.Add(result);
            }

            foreach (var program in ((Sitecore.Commerce.Connect.DynamicsRetail.Entities.LoyaltyPrograms.LoyaltyCard)loyaltyCard).LoyaltyPrograms)
            {
                var result = new LoyaltyProgramItemBaseJsonResult();
                result.Initialize(program);
                this.Programs.Add(result);
            }
        }
        /// <summary>
        /// Initializes the specified loyalty card.
        /// </summary>
        /// <param name="loyaltyCard">The loyalty card.</param>
        public override void Initialize(LoyaltyCard loyaltyCard)
        {
            Assert.ArgumentNotNull(loyaltyCard, "loyaltyCard");

            this.CardNumber = loyaltyCard.CardNumber;

            foreach (var point in loyaltyCard.RewardPoints)
            {
                var result = new LoyaltyRewardPointItemJsonResult();
                result.Initialize(point);
                this.RewardPoints.Add(result);
            }

            foreach (var program in ((Sitecore.Commerce.Connect.DynamicsRetail.Entities.LoyaltyPrograms.LoyaltyCard)loyaltyCard).LoyaltyPrograms)
            {
                var result = new LoyaltyProgramItemBaseJsonResult();
                result.Initialize(program);
                this.Programs.Add(result);
            }
        }