protected void btnCancel_Click(object sender, EventArgs e) { try { IBookingManager bookingManager = BookingManagerFactory.GetInstance().Create(); Cancelation cancelation = new Cancelation(); cancelation.BookingID = int.Parse(lblBookingID.Text); cancelation.CancelationDate = DateTime.Parse(lblDate.Text); int noOfSeats = int.Parse(lblSeats.Text); decimal ticketCost = decimal.Parse(lblCost.Text); decimal totalCost = noOfSeats * ticketCost; cancelation.RefundAmount = totalCost; cancelation.NoOfSeats = noOfSeats; cancelation.CostPerTicket = ticketCost; cancelation.UserName = User.Identity.Name; cancelation.Miles = GetHappyMiles(lblRefNo.Text); cancelation.BookingReferenceNo = lblRefNo.Text; DateTime dateOfJourney = DateTime.Parse(lblDate.Text); TimeSpan timeOfJourney = TimeSpan.Parse(lblDeptTime.Text); if (bookingManager.CancelAirTravelBooking(cancelation, dateOfJourney, timeOfJourney)) { lblSuccessMessage.Text = "Cancelation done successfully"; btnCancel.Enabled = false; PlaceHolder2.Visible = true; Page.MaintainScrollPositionOnPostBack = true; lblCancelationDate.Text = DateTime.Now.ToLongDateString(); lblRefundAmount.Text = cancelation.RefundAmount.ToString(); } } catch (CancelationException cex) { lblErrMsg.Text = cex.Message; PlaceHolder2.Visible = false; } catch (Exception) { lblErrMsg.Text = "Sorry !!! Unable to cancel the booking. Please Try Again"; PlaceHolder2.Visible = false; } }