public ActionResult Login(RequestUsuarioCredencialesDtoApi prm) { if (!ModelState.IsValid) { return(BadRequest()); } var t = Task.Run(() => _lnUsuario.ObtenerPorLogin(prm)); t.Wait(); return(Json(t.Result)); }
/*En otro entregable completar*/ public async Task <ResponseUsuarioLoginDtoApi> ObtenerPorLogin(RequestUsuarioCredencialesDtoApi prm) { ResponseUsuarioLoginDtoApi resultado = new ResponseUsuarioLoginDtoApi(); int statusCode = 0; try { var response = string.Empty; string url = string.Format("{0}{1}", ConstanteVo.UrlBaseApi, "Login"); using (var client = new HttpClient()) { var content = new StringContent(JsonConvert.SerializeObject(prm), Encoding.UTF8, "application/json"); HttpResponseMessage result = await client.PostAsync(new Uri(url), content); if (result != null) { response = await result.Content.ReadAsStringAsync(); statusCode = (int)result.StatusCode; } } if (!string.IsNullOrEmpty(response)) { resultado = JsonConvert.DeserializeObject <ResponseUsuarioLoginDtoApi>(response); } } catch (Exception ex) { if (resultado == null) { resultado = new ResponseUsuarioLoginDtoApi(); } string mensajeEx = (ex.InnerException == null ? ex.Message : ex.InnerException.Message).Replace(Environment.NewLine, " "); Log(Level.Error, mensajeEx); resultado.ListaError.Add(new ErrorDtoApi { Mensaje = mensajeEx }); } finally { if (resultado != null) { resultado.StatusCode = statusCode; } } return(resultado); }