public List<Payment> GetPayments()
        {
            List<Payment> payments = new List<Payment>();
            DataSet ds = new DataSet();
            DataSetTableAdapters.paymentsTableAdapter adapter = new DataSetTableAdapters.paymentsTableAdapter();
            adapter.Fill(ds.payments);
            DataSet.paymentsDataTable table = adapter.GetPaymentData();

            // load all payments into the list
            foreach (DataSet.paymentsRow row in table.Rows)
            {
                // create memory for new payment & fill in properties
                Payment p = new Payment();
                p.ID = row.paymentId;
                p.CardholderName = row.cardholderName;
                p.CardType = row.cardType;
                p.CardNumber = row.cardNumber;
                p.CardExpiration = row.cardExpiration;

                // add this payment to the list
                payments.Add(p);
            }
            // returns the list w/ 0 or more Payments
            return payments;
        }