Ana Sayfa / Blog Yazılarım / .NET CORE CRUD İŞLEMLERİ

.NET CORE CRUD İŞLEMLERİ

  • BugraSoft
  • 15.03.2024
  • 0 Yorum
  • 216 Görüntülenme

Merhaba, bugün ASP.NET CORE ile Ekleme, Silme, Güncelleme ve Listeleme olaylarına değineceğiz.


İlk olarak Veri Tabanı Sütunlarımızı Belirleyelim.

public class KitapTuru

{

    [Key]

    public int ID { get; set; }

 

    [Required(ErrorMessage = "Kitap Türü Adı Boş Bırakılamaz")]

    [MaxLength(50, ErrorMessage ="50 Karakterden fazla giremezsiniz")]

    public string Ad { get; set; }

}


Daha Sonra DBContextte Tablomuzu tanımlayalım

public class UygulamaDBContext:DbContext

 {

     public UygulamaDBContext(DbContextOptions<UygulamaDBContext> options) : base(options){  }

 

     public DbSet<KitapTuru> KitapTurleri { get; set; }

 

 }


Daha Sonra Controllerımızda Veri Tabanımızdan Nesne Oluşturalım

private readonly UygulamaDBContext _dbContext;

 

 public KitapTuruController(UygulamaDBContext dbContext)

 {

     _dbContext = dbContext;

 }


Daha Sonra İse Listeleme Control'ü ve View'ı oluşturalım

public IActionResult Index()

 {

     List<KitapTuru> k = _dbContext.KitapTurleri.ToList();

     return View(k);

 }

@model List<KitapTuru>

 

@if (TempData["Basarili"] != null)

{

    <h1 class="text-success">@TempData["Basarili"]</h1>

}

<div class="container">

 

    <div class="row pt-3 pb-4">

<h1>Kitap Türü Sayfası</h1>

    </div>

<table class="table table-striped table-bordered text-center">

    <thead>

        <tr>

            <th>ID</th>

            <th>Kitap Adı</th>

        </tr>

    </thead>

    <tbody>

        @foreach (var item in Model)

        {

            <tr>

                <td>@item.ID</td>

                <td>@item.Ad</td>

                    <td><a class="btn btn-danger" href="/KitapTuru/Sil/@item.ID">Sil</a> </td>

                    <td><a class="btn btn-warning" href="/KitapTuru/Guncelle/@item.ID">Güncelle</a> </td>

               

               

            </tr>

        }

    </tbody>

   

</table>

 

    <div class="row pt-3 pb-4">

        <div> <a href="/KitapTuru/Ekle" class="btn btn-lg btn-primary" type="button">Kitap Türü Ekle</a>

        </div>

     

    </div>

 

</div>


Daha Sonra İse Ekleme Control'ü ve View'ı oluşturalım

public IActionResult Ekle()

 {

     return View();

 }

 

 [HttpPost]

 public IActionResult Ekle(KitapTuru k)

 {

     if (ModelState.IsValid)

     {

         _dbContext.KitapTurleri.Add(k);

         _dbContext.SaveChanges();

         TempData["Basarili"] = "Kitap Türü Ekleme İşlemi Başarılı";

         return RedirectToAction("Index", "KitapTuru");

     }

     return View();

 }

 

@model KitapTuru

 

<div class="container">

    <form action="/KitapTuru/Ekle" method="post">

        <h1>Kitap Türü Ekle</h1>

 

 

        <h1 class="mt-3">Kitap Türü Adı</h1>

        <input type="text" name="Ad" class="form-control"/>

        <span asp-validation-for="Ad" class="text-danger"></span>

        <br />

        <button type="submit" class="btn btn-primary">Ekle</button>

   

    </form>

 

</div>


Daha Sonra İse Güncelleme Control'ü ve View'ı oluşturalım

public IActionResult Guncelle(int? id)

 {

     if (id == null && id == 0)

     {

         return RedirectToAction("Index", "KitapTuru");

     }

     KitapTuru? k = _dbContext.KitapTurleri.Find(id);

 

     if (k == null)

     {

         return RedirectToAction("Index", "KitapTuru");

 

     }

     return View(k);

 }

 

 [HttpPost]

 public IActionResult Guncelle(KitapTuru k)

 {

     if (ModelState.IsValid)

     {

         _dbContext.KitapTurleri.Update(k);

         _dbContext.SaveChanges();

         TempData["Basarili"] = "Kitap Türü Güncelleme İşlemi Başarılı";

         return RedirectToAction("Index", "KitapTuru");

     }

     return View();

 }

@model KitapTuru

 

<div class="container">

    <form action="/KitapTuru/Guncelle" method="post">

        <h1>Kitap Türü Güncelle</h1>

 

 

        <h1 class="mt-3">Kitap Türü Adı</h1>

        <input type="hidden" name="ID" value="@Model.ID">

        <input type="text" name="Ad" class="form-control" asp-for="Ad"/>

        <span asp-validation-for="Ad" class="text-danger"></span>

        <br />

        <button type="submit" class="btn btn-primary">Güncelle</button>

 

    </form>

 

</div>


Daha Sonra İse Silme Control'ü ve View'ı oluşturalım

public IActionResult Sil(int? id)

 {

     if (id == null && id == 0)

     {

         return RedirectToAction("Index", "KitapTuru");

     }

     KitapTuru? k = _dbContext.KitapTurleri.Find(id);

 

     if (k == null)

     {

         return RedirectToAction("Index", "KitapTuru");

 

     }

     return View(k);

 }

 

 [HttpPost]

 public IActionResult Sil(int id)

 {

     KitapTuru k = _dbContext.KitapTurleri.Find(id);

     if (k == null)

     {

         return RedirectToAction("Index", "KitapTuru");

     }

     _dbContext.KitapTurleri.Remove(k);

     _dbContext.SaveChanges();

     TempData["Basarili"] = "Kitap Türü Silme İşlemi Başarılı";

     return RedirectToAction("Index", "KitapTuru");

 }

@model KitapTuru

 

<div class="container">

    <form action="/KitapTuru/Sil" method="post">

        <h1>Kitap Türü Sil</h1>

 

 

        <h1 class="mt-3">Kitap Türü Adı</h1>

        <p>@Model.Ad</p>

       

        <input type="hidden" name="ID" value="@Model.ID" >

     

        <br />

        <button type="submit" class="btn btn-primary">Sil</button>

 

    </form>

 

</div>


Yorumlar

henüz yorum bulunamadı

Yorum Yap