Exemple #1
0
        public ActionResult Login(RequestUsuarioCredencialesDtoApi prm)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }
            var t = Task.Run(() => _lnUsuario.ObtenerPorLogin(prm));

            t.Wait();

            return(Json(t.Result));
        }
Exemple #2
0
        /*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);
        }