none
Enviar una variable bool de Json a Ajax Con MVC RRS feed

  • Pregunta

  • Hola Mundo.

    Aprendiendo Ajax y Json me salio este problema.

    Quiero enviar un dato bool de mi controlador con Json al Ajax, pero solo retorna una opción

    este es mi controlador

    public JsonResult TipoExtension(String Extension)
            {
                DAL dal = new DAL();
                var result = new List<Catalogo>();
                int opcion = 2;
                string descripcion = "";
    
                int[] ListExtension = new int[] { 1327, 1328, 1329, 1330 };
    
                for (int i = 0; i <= ListExtension.Count(); i++)
                {
                    int parametro = ListExtension[i];
                    result = dal.Consulta(parametro, opcion);
    
                    foreach (var item in result)
                    {
                        descripcion = item.Descripcion.ToString();
    
                        if (descripcion.Equals(Extension))
                        {
                            return Json(new { ExtensionOk = true }, JsonRequestBehavior.AllowGet);
                        }
                    }
                }
    
                return Json(new { ExtensionOk = false }, JsonRequestBehavior.AllowGet);
            }


    y aca esta el ajax en mi index

        function GetExtension(Extension) {
            $.ajax({
                method: "GET",
                url: '@Url.Action("TipoExtension", "Projecto")?Extension=' + Extension,
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                data: {},
                success: function (result) {
                    if (result.ExtensionOk) {
                        console.log("permitido");
                    }
                    else {
                        console.log("Denegado");
                    }
                },
    
                failure: function (result) {
                    console.log(result);
                },
                error: function (result) {
                    console.log(result);
                }
            });
        };


    cuando la informacion se encuentra en dal.Consulta y encuentra el Dato me sale el console.log("Permitido"), pero cuando no se encuentra el registro no me sale el console.log("Denegado"), y lo que imprime es el error: function.

    y el error que me da es.

    --------------------------------------------------------------------------------------------------------------------

    Índice fuera de los límites de la matriz.

    Descripción: Excepción no controlada al ejecutar la solicitud Web actual. Revise el seguimiento de la pila para obtener más información acerca del error y dónde se originó en el código.

    Detalles de la excepción: System.IndexOutOfRangeException: Índice fuera de los límites de la matriz.

    --------------------------------------------------------------------------------------------------------------------

    y no se en que estoy fallando.

    Muchas Gracias por su tiempo en ayudarme.

    --------------------------------------------------------------------------------------------------------------------
    --------------------------------------------------------------------------------------------------------------------
    martes, 25 de agosto de 2020 5:52

Respuestas

  • Hola Raficoma,

    Gracias por levantar tu consulta en los foros de MSDN. Con respecto a la misma es normal que este error se presente ya que no estas guardando nada dentro de la matriz y por esta razón este dando el mensaje de error, lo que puedes hacer es insertar algún dato o usar un try catch para que el sistema no se caiga con el error.

    Eric Ruiz

     ____________________________ 

      

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.  

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.   

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft. 



    • Editado EricRRModerator martes, 25 de agosto de 2020 11:47 Gramatica
    • Marcado como respuesta Raficoma miércoles, 26 de agosto de 2020 3:53
    martes, 25 de agosto de 2020 11:46
    Moderador

Todas las respuestas

  • Hola Raficoma,

    Gracias por levantar tu consulta en los foros de MSDN. Con respecto a la misma es normal que este error se presente ya que no estas guardando nada dentro de la matriz y por esta razón este dando el mensaje de error, lo que puedes hacer es insertar algún dato o usar un try catch para que el sistema no se caiga con el error.

    Eric Ruiz

     ____________________________ 

      

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.  

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.   

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft. 



    • Editado EricRRModerator martes, 25 de agosto de 2020 11:47 Gramatica
    • Marcado como respuesta Raficoma miércoles, 26 de agosto de 2020 3:53
    martes, 25 de agosto de 2020 11:46
    Moderador
  • Hay esta mi problema, ya que no entiendo de que matriz me habla y como insertar algún dato a esa matriz.
    martes, 25 de agosto de 2020 14:03