public ActionResult Index()
        {
            var mortgageDetails = GetMortgageDetails().GetAwaiter().GetResult();

            TempData["MortgageDetails"] = mortgageDetails;
            TempData["LoanDetailsM"]    = new LoanDetailsM();
            return(View(new MortgageM(mortgageDetails)));
        }
        public PartialViewResult CalculateMortgage(MortgageM mortgageM)
        {
            if (ModelState.IsValid)
            {
                var          loanDetails  = Calculate(mortgageM).GetAwaiter().GetResult();
                LoanDetailsM loanDetailsM = new LoanDetailsM()
                {
                    Duration      = mortgageM.Duration,
                    InterestRate  = mortgageM.InterestRate,
                    LoanAmount    = mortgageM.LoanAmount,
                    TotalInterest = loanDetails.TotalInterest,
                    TotalLoan     = loanDetails.TotalLoan
                };

                return(PartialView("_PartialLoanDetails", loanDetailsM));
            }

            throw new HttpException("Invalid values supplied!");
        }