public async Task <ActionResult> UpdatePaymentHandling() { MemberViewModel vwMemberViewModel = new MemberViewModel(_uri); try { //set the member bool bHasSet = await vwMemberViewModel.SetClubAndMember(this.Request.HttpContext, _memberService); //set the clubdefault credit //_memberService.SetClubCredit(vwMemberViewModel.Member); //fill in the club credit view Helpers.HtmlMemberExtensions.FillInClubCreditFormData(this.HttpContext, vwMemberViewModel.Member); //update the payment info -use a new memberservice because of previous query/datacontext issues //if not successful, generates an error message and redirects back to same Payments view string sErrorMessage = string.Empty; sErrorMessage = await vwMemberViewModel.UpdatePaymentHandling(this.Request.HttpContext, _memberService, vwMemberViewModel.Member); vwMemberViewModel.ErrorMessage = sErrorMessage; if (string.IsNullOrEmpty(vwMemberViewModel.ErrorMessage)) { //secure pages redirect to self and display success message TempData["errormessage"] = "Success, the payment data has been updated."; } else { TempData["errormessage"] = vwMemberViewModel.ErrorMessage; //don't make them fill in all of the form data again TempData["credit"] = vwMemberViewModel.Member.ClubDefault.AccountToCredit.FirstOrDefault(); } return(RedirectToAction("Payments")); } catch (Exception x) { //AppHelper.PublishError(x, vwMemberViewModel.ErrorMessage); TempData["errormessage"] = x.Message; vwMemberViewModel.ErrorMessage = x.Message; return(RedirectToAction("Payments")); } }