public void AddUpdate(string userName, PaymentMethod paymentMethod)
        {
            if (!_paymentMethodsDictionary.ContainsKey(userName))
            {
                _paymentMethodsDictionary[userName] = new List<PaymentMethod>();
            }

            var userPaymentMethods = _paymentMethodsDictionary[userName];
            var matchingPaymentMethod = userPaymentMethods.Find(a => a.Id == paymentMethod.Id);
            if (matchingPaymentMethod != null)
            {
                userPaymentMethods.Remove(matchingPaymentMethod);
            }
            _paymentMethodsDictionary[userName].Add(paymentMethod);
        }
        public HttpResponseMessage PostAddress(PaymentMethod paymentMethod)
        {
            if (paymentMethod == null)
            {
                return Request.CreateErrorResponse(HttpStatusCode.BadRequest, Resources.InvalidAddress);
            }

            if (!ModelState.IsValid)
            {
                return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
            }

            _paymentMethodRepository.AddUpdate(this.User.Identity.Name, paymentMethod);
            return Request.CreateResponse(HttpStatusCode.OK, true);
        }