Строка удаления содержит изображение и внешний ключ в таблице базы данных с помощью AJAX- ASP.NET MVC 5 - PullRequest
0 голосов
/ 03 октября 2019

Я пытаюсь удалить строку в моей таблице (автомобили) с помощью Ajax, чтобы страница не обновлялась при попытке удалить строку таблицы. Вот код, который у меня есть, но в данный момент нажатие Delete ничего не делает:

Таблица (автомобили): id image BodyId (FK) GearBoxId (FK) OfficeId (FK)

Контроллер:

    [HttpPost]
    public async Task<ActionResult> Delete(string id)
    {
        Cars cars = await db.Cars.FindAsync(id);
        db.Cars.Remove(cars);
        await db.SaveChangesAsync();
        return Json("");
    }

    [HttpPost]
    public async Task<ActionResult> DeleteCarImage(string id, string 
     imageId)
    {
        Cars cars = await db.Cars.FindAsync(id);
        cars.Images = cars.Images?.Replace(imageId + "*", "");
        db.Entry(cars).State = EntityState.Modified;
        await db.SaveChangesAsync();
        System.IO.File.Delete(Path.Combine(Server.MapPath("/images/cars"), 
         imageId));
        return Json("");
    }

Просмотр: Удалить

Сценарий:

   <script>
    function deleteCar(id)
    {
      swal({
      text: "You will not be able to recover this car !!",
      type: "warning",
      howCancelButton: true,
      confirmButtonText: "Yes, delete it !!",
      cancelButtonText: "No, cancel it !!",
      closeOnConfirm: false,
      closeOnCancel: true,
      showLoaderOnConfirm: true},
      function (isConfirm)
      {
        if (isConfirm){
         $.ajax({
         method: 'POST',
         url: '/Cars/Delete/' + id,
         success: function (response)
         {
           var row = document.getElementById(id);
           row.remove();
           swal("Deleted", "Car have been deleted.", "success");
         },
        error: function (error){sweetAlert("Oops...", "Something went 
        wrong!!","error");}
                });
                       }
       });   
    }
 </script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...