public IActionResult Cotar(CotarFreteViewModel cotacao) { var token = CheckToken(); var client = new HttpClient(); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.Value); var url = "http://localhost:64853/frete/CotarFrete"; var urlCidades = "http://localhost:64853/frete/v1/Nomecidades"; var idCidades = new List <string> { cotacao.IdCidadeorigem, cotacao.IdCidadeDestino }; var stringIdCidades = new StringContent(JsonConvert.SerializeObject(idCidades), Encoding.UTF8, "application/json"); var nmCidadesResponse = client.PostAsync(urlCidades, stringIdCidades).Result.Content.ReadAsStringAsync(); var stringContent = new StringContent(JsonConvert.SerializeObject(cotacao), Encoding.UTF8, "application/json"); var response = client.PostAsync(url, stringContent); ValorFreteViewModel cotacaoResult = JsonConvert.DeserializeObject <ValorFreteViewModel>(response.Result.Content.ReadAsStringAsync().Result); var nmCidades = JsonConvert.DeserializeObject <IEnumerable <CidadeViewModel> >(nmCidadesResponse.Result); cotacaoResult.CidadeDestino = nmCidades.FirstOrDefault(x => x.IdCidade == cotacaoResult.IdCidadeDestino).NmCidade; cotacaoResult.CidadeOrigem = nmCidades.FirstOrDefault(x => x.IdCidade == cotacaoResult.IdCidadeOrigem).NmCidade; return(View("cotar", cotacaoResult)); }
public IActionResult Index() { var token = CheckToken(); var client = new HttpClient(); //var stringContent = new StringContent(token.Value, UnicodeEncoding.UTF8, "application/json"); //stringContent.Headers.ContentType = new MediaTypeHeaderValue("application/json"); var url = "http://localhost:64853/frete/v1/cidades"; client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token.Value); var result = client.GetAsync(url).Result; IEnumerable <CidadeViewModel> cidades = JsonConvert.DeserializeObject <List <CidadeViewModel> >(result.Content.ReadAsStringAsync().Result); CotarFreteViewModel cotar = new CotarFreteViewModel { Cidades = cidades }; return(View(nameof(Index), cotar)); }