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!"); }
private async Task <LoanDetails> Calculate(MortgageM mortgageM) { // mortgage?loanAmount=1000&duration=2&name=aaaaa string url = "http://localhost:49608/api/mortgage?"; HttpClient client = new HttpClient(); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); url = url + "&loanAmount=" + mortgageM.LoanAmount.ToString() + "&duration=" + mortgageM.Duration.ToString() + "&interestRate=" + mortgageM.InterestRate; var response = await client.GetAsync(url).ConfigureAwait(false); response.EnsureSuccessStatusCode(); // Deserialize the response body. string data = await response.Content.ReadAsStringAsync(); JavaScriptSerializer JSserializer = new JavaScriptSerializer(); return(JSserializer.Deserialize <LoanDetails>(data)); }