Ejemplo n.º 1
0
        //Assuming at least one CreditCard PaymentMethod has been created using the Orders UI
        public Guid GetPaymentMethodID()
        {
            Guid    creditCardPaymentMethodId = Guid.Empty;
            Boolean ccPmtMethodFound          = false;

            //Get all PaymentMethods
            DataSet         pmtMethods = orderCtx.GetPaymentMethods();
            DataTableReader reader     = pmtMethods.CreateDataReader();

            IEnumerator readerEnum = reader.GetEnumerator();

            while (readerEnum.MoveNext() && !ccPmtMethodFound)
            {
                DbDataRecord rec = (DbDataRecord)readerEnum.Current;
                switch (rec.GetInt32(rec.GetOrdinal("PaymentType")))
                {
                case (int)PaymentMethodTypes.CreditCard:
                    creditCardPaymentMethodId = rec.GetGuid(rec.GetOrdinal("PaymentMethodId"));
                    ccPmtMethodFound          = true;
                    break;
                }
            }

            if (Guid.Empty == creditCardPaymentMethodId)
            {
                throw new ApplicationException("This demo requires at least one CreditCard type of PaymentMethod to be defined!");
            }

            return(creditCardPaymentMethodId);
        }