Deleting multiple Record with apiController and angular

1.1k Views Asked by At

how to Deleting multiple Record with apiController and angular ?

I've tried the following. But I did not succeed

api controller :

 public class NewsCategoriesController : ApiController
    {
        private readonly IJN_NewsCategoriesService _ijnNewsCategoriesService;

        public NewsCategoriesController(IJN_NewsCategoriesService ijnNewsCategoriesService)
        {
            _ijnNewsCategoriesService = ijnNewsCategoriesService;
        }
        public void Delete(int id)
        {
           _ijnNewsCategoriesService.DeleteNewsCategory(id);
        }
        public void ManyDelete(DeleteViewModel ids)
        {
            var d = ids;
        }
    }
    public class DeleteViewModel
    {
        public int[] ids { get; set; }
    }
}

ajax methods :

deleteNewsCategories: function (id) {
                    return $http({
                        method: 'DELETE',
                        url: '/api/newsCategories/' + id
                    });
                },

deleteManyNewsCategories: function (ids) {
                    return $http({
                        method: 'DELETE',
                        url: '/api/newsCategories/' + JSON.stringify(ids),
                        traditional: true
                    });
                }

Delete a record works properly. To delete multiple record, the following error occurs:

    Failed to load resource: the server responded with a status of 400 (Bad Request)
 http://localhost:25768/api/newsCategories/[12,26]
1

There are 1 best solutions below

0
On BEST ANSWER

The problem was solved.

 public void Delete(int id)
    {
       _ijnNewsCategoriesService.DeleteNewsCategory(id);
    }
    public void DeleteModels(DeleteViewModel dvm)
    {
        var d = dvm;
    }


      public class DeleteViewModel
        {
            public int[] Ids { get; set; }
        }

$http methods for delete:

             deleteNewsCategories: function (id) {
                return $http({
                    method: 'DELETE',
                    url: '/api/newsCategories/' + id
                });
            },

            deleteManyNewsCategories: function (ids) {
                return $http({
                    headers: {
                        'Content-type': 'application/json'
                    },
                    method: "DELETE",
                    url: "/api/newsCategories/",
                    data: { Ids: ids }
                });
            }