how to make a query with a parameter in angularjs

1

I need help I am new at angularjs and I am attentive when making a query with parameter could you help me I mark error in the post, someone who could guide me the code is the following

angularjs controller

$scope.GetArticulos = function () {
        var busqueda = $scope.larticulo;
        console.log("Entrando al  controlador GetArticulos " + busqueda)

        ArticulosService.GetArticulos(busqueda)
            .then(function (response) {

                if (response.code = 100) {

                    $scope.articulos = response.data.Result;
                    //$scope.tamanos = angular.toJson(response.data.Result);
                    $scope.apply;
                    console.log($scope.articulos);
                }
            }, function (err) { });


    }

angularjs service

'use strict'
app.service('ArticulosService', ['$http', '$q', function ($http, $q) {
    this.GetArticulos = function (busqueda) {
        var defered = $q.defer();
        debugger;
        console.log("Entrando al Servicio Articulos")
        $http({
            method: 'POST',
            url: 'Labels/ObtenerArticulos',
            params: {
                'busqueda': busqueda
            } 
            // dataType:'json',
            //params:{Itemcode:itemcode}

        })
            .then(function (response) {
                defered.resolve(response);
            },
            function (err) {
                defered.reject(err);
            });

        return defered.promise;

    }
}]);

my class of c #

[HttpGet]
        public JsonResult ObtenerArticulos(string codigo)
        {

            CentralPOSDataManager Code = new CentralPOSDataManager();
            var result = Code.Busqueda_Articulos(codigo);
            return Json(result, JsonRequestBehavior.AllowGet);
        }

metodo c#

  public MethodResponse<List<Articulos>> Busqueda_Articulos(string codigo)
        {
            MethodResponse<List<Articulos>> Result = new MethodResponse<List<Articulos>>() { Code = 100, Message = "", Result = new List<Articulos>() };
            try
            {

                using (CNTEntities db = new CNTEntities())
                {
                    SqlParameter p1 = new SqlParameter("@ItemCode", SqlDbType.VarChar, 20); p1.Value = codigo;


                    try
                    {

                        string query = "EXEC Busqueda_Articulos @ItemCode";
                      //  var res = db.Database.SqlQuery<MethodResponse<string>>(query, p1, p2).ToList();
                        var res = db.Database.SqlQuery<Articulos>(query,p1).ToList();
                        if (res.Count > 0)
                        {
                            Result.Result = res;
                        }
                        else
                        {
                            Result.Message = "No encontro registro";
                        }
                    }
                    catch (Exception ex)
                    {
                        Result.Message = ex.Message + "QUERY DE ETIQUETAS";
                    }
                }
            }
            catch (Exception ex)
            {
                Result.Message = ex.Message + "METODO RESPONDE DE ETIQUETAS";
            }
            return Result;
        }

I would appreciate your help partners

    
asked by Alex 17.05.2018 в 19:06
source

1 answer

0

Your method for ObtenerArticulos listens for HttpGet so change your client code from POST to GET . In addition, the parameter it receives is named as codigo , not as busqueda

So try changing this code

$http({
    method: 'POST',
    url: 'Labels/ObtenerArticulos',
    params: {
        'busqueda': busqueda
    } 
    // dataType:'json',
    //params:{Itemcode:itemcode}

})

Asi :

$http({
    method: 'GET',
    url: 'Labels/ObtenerArticulos',
    params: {
        'codigo': busqueda
    } 
    // dataType:'json',
    //params:{Itemcode:itemcode}

})
    
answered by 21.05.2018 / 16:54
source