.NET Core API DELETE Metodu Oluşturma #7

Posted by

Merhaba arkadaşlar, bu yazımda sizlere .NET Core API DELETE Metodu Oluşturma konusundan bahsedeceğim.

Get, Post, Put metotlarımızı yazdık ve son olarak Delete metodumuzu yazacağız. Delete metodumuz ile de ürün ve kategori silme işlemlerini gerçekleştireceğiz. Delete metodumuzu da yazalım ve sonraki yazımızda da projemizi Github’a aktaracağız. İşlemlerimize Github’a aktardığımız üzerinden devam edeceğiz. Daha sonra da kodlarımızda düzeltmeler sağlayacağız.

Öncelikle ürün silme işlemini gerçekleştirelim. Bunun için ProductsController‘a gidiyoruz ve Delete aksiyonumuzu tanımlıyoruz. Sonrasında da ürün silme için gerekli kodlarımızı yazıyoruz.

[HttpDelete("{id}")]
public IActionResult Delete(int id)
{
   using var context = new NetCoreApiSampleDataContext();

   var product = context.Products.Find(id);
   
   if (product == null)
       return NotFound();

   context.Products.Remove(product);

   context.SaveChanges();

   return NoContent();
}

Öncelikle Find metodumuz ile ilgili product’ın sorgulamasını sağlıyoruz. Eğer girilen Id’ye ait bir product var ise silme işlemleri sağlanacaktır. Eğer yoksa NotFound() metodumuzu çağırarak geriye yanıt döndürüyoruz. Ürün var ise Remove metodumuzu kullanarak ilgili ürünü silme işlemini gerçekleştiriyoruz.

Ürün silme işlemini sağladık şimdi de sıra Kategori silme işleminde. Benzer şekilde o işlemi de gerçekleştiriyoruz.

[HttpDelete("{id}")]
public IActionResult Delete(int id)
{
    using var context = new NetCoreApiSampleDataContext();

    var category = context.Categories.Find(id);

    if (category == null)
        return NotFound();

    context.Categories.Remove(category);

    context.SaveChanges();

    return NoContent();
}

Kategori için de öncelikle Find metodu ile ilgili category’nin sorgulamasını sağlıyoruz. Eğer girilen Id’ye ait bir category var ise silme işlemleri sağlanacaktır. Yoksa NotFound() metodumuzu çağırarak geriye yanıt döndürüyoruz. Kategori var ise Remove metodu kullanılarak ilgili kategorinin silme işlemini gerçekleştiriyoruz.

Silme işlemleri de yukarıdaki gibi yapılabilir.

Bir sonraki yazımda projemizi Github’a aktaracağız.

Görüşmek üzere 🙂

Leave a Reply

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir