コード例 #1
0
        public async Task <ActionResult> Cancel(string paymentId, PaymentInstrument instrument)
        {
            try
            {
                switch (instrument)
                {
                case PaymentInstrument.CreditCard:
                    await PaymentHelper.CancelCreditCardPayment(paymentId, this.swedbankPayClient, TempData, this.cartService);

                    break;

                case PaymentInstrument.Trustly:
                    await PaymentHelper.CancelTrustlyPayment(paymentId, this.swedbankPayClient, TempData, this.cartService);

                    break;

                case PaymentInstrument.Invoice:
                    await PaymentHelper.CancelInvoicePayment(paymentId, this.payeeInfoOptions.PayeeReference, this.swedbankPayClient, TempData, this.cartService);

                    break;
                }

                return(RedirectToAction("Details", "Orders"));
            }
            catch (Exception e)
            {
                TempData["ErrorMessage"] = $"Something unexpected happened. {e.Message}";
                return(RedirectToAction("Details", "Orders"));
            }
        }