c# Web
Beğen (0)

Core Mvc Projesinde Otomobil Satışı Yapan Web Projesini Tasarlama7

Bir önceki dersimizde kayıtları listeledikten sonra seçili kaydı ayrıntılı bir şekilde göstermiştik. Bu dersimizde de seçilen kayda ait düzenleme işlemini gerçekleştireceğiz. Controller tarafında 2 tane Duzenle metodu oluşturuyoruz. Birincisiyle düzenlenen kaydı getireceğiz. İkincisiyle değişiklikleri tabloya kaydedeceğiz.

Controller tarafında aşağıdaki metotları yazalım.

public IActionResult Duzenle(int id)
{
    // id--> ilan
    var ilan = _context.Ilanlar.SingleOrDefault(i => i.Id == id);
    return View(ilan);
}

[HttpPost]
public IActionResult Duzenle(Ilan duzenlenmisIlan)
{
    // duzenlenmisIlan --> veritabanındaki ilanı bulalım
    var ilan = _context.Ilanlar.SingleOrDefault(
i => i.Id == duzenlenmisIlan.Id);
    if (duzenlenmisIlan.Dosya != null)
    {
        // eski dosyayı silelim
        string kokDizin = Directory.GetCurrentDirectory();
        string kayitDizini = Path.Combine(kokDizin, 
"wwwroot", "resimler", "ilanlar");
        string dosyaAdi = ilan.ResimAdi;
        string silinecekResminTamYolu = 
Path.Combine(kayitDizini, dosyaAdi);
        System.IO.File.Delete(silinecekResminTamYolu);

        dosyaAdi = Guid.NewGuid() + 
Path.GetExtension(duzenlenmisIlan.Dosya.FileName);
        string tamYol = Path.Combine(kayitDizini, dosyaAdi);

        using (var dosyaAkisi = new FileStream(tamYol, FileMode.Create))
        {
            duzenlenmisIlan.Dosya.CopyTo(dosyaAkisi);
        }

        ilan.ResimAdi = dosyaAdi;
    }

    ilan.Baslik = duzenlenmisIlan.Baslik;
    ilan.Fiyati = duzenlenmisIlan.Fiyati;
    ilan.Renk = duzenlenmisIlan.Renk;
    ilan.Aciklama = duzenlenmisIlan.Aciklama;
    ilan.Tarih = DateTime.Now;

    _context.SaveChanges();

    return RedirectToAction("Index");
}

Bu metodu referans alacak Duzenle view dosyasını oluşturalım. Dosya içeriği aşağıdaki gibi olacaktır.

@model Ilan
@{
    ViewData["Title"] = "İlan Düzenle Sayfası";
}

<h1>İlan Düzenleme Formu</h1>
<form asp-action="Duzenle" method="post" enctype="multipart/form-data">
    <p>
        <label for="Id">İlan Numarası</label>
        <input type="number" asp-for="Id" id="Id" 
class="form-control" readonly>
    </p>

    <p>
        <label for="Baslik">İlan Başlığı</label>
        <input type="text" asp-for="Baslik" id="Baslik" 
class="form-control">
    </p>

    <p>
        <img src="~/resimler/ilanlar/@Model.ResimAdi" alt="ilan" 
class="img-thumbnail" width="120"><br>
        <label for="Dosya">Yeni İlan Resmi</label>
        <input type="file" asp-for="Dosya" id="Dosya" 
class="form-control">
    </p>

    <p>
        <label for="Fiyati">Fiyati</label>
        <input type="number" asp-for="Fiyati" id="Fiyati" step="0.01" 
class="form-control">
    </p>

    <p>
        <label for="Renk">Renk</label>
        <select asp-for="Renk" id="Renk" class="form-select">
            <option value="Beyaz">Beyaz</option>
            <option value="Kırmızı">Kırmızı</option>
            <option value="Mavi">Mavi</option>
            <option value="Siyah">Siyah</option>
            <option value="Gri">Gri</option>
        </select>
    </p>

    <p>
        <label for="Aciklama">Açıklama</label>
        <textarea asp-for="Aciklama" id="Aciklama" rows="5" 
class="form-control"></textarea>
    </p>

    <p>
        <input type="submit" value="Güncelle" class="btn btn-primary">
    </p>
</form>

Projeyi kaydedip çalıştıralım. Düzenleme işlemini gerçekleştireceğimiz bir kayıt seçelim. Kayıtta resim dahil bazı alanları değiştirelim. Güncelle dediğimizde kaydın güncellendiğini görürsünüz.

Okunma Sayısı: 8

Etiketler
core mvc sqlite update controller 

Yorumlar

Yorum Ekle
Kötü İyi
İlgili Makaleler
Web Tabanlı Uygulama Geliştirme Dersi İkinci Dönem Birinci Yazılı Çalışma Soruları
Web Tabanlı Uygulama Geliştirme Dersi İkinci Dönem İkinci Yazılı Çalışma Soruları
2020 TYT Matematik Ortakatlı Kuralıyla İlgili Sorunun Çözümünü c# Diliyle Web Form Sayfasında Kodlama
Asp.Net Platformunda Harici JSON Dosyasından Namaz Vakitlerini Alma
Personele Ait Boy ve Kilo Bilgilerine Göre İdeal Kiloyu Bulan Uygulamayı Asp.Net İle Yapınız
ASP.NET ve ASP.NET Core Arasındaki Farklar
Asp.Net Uygulamalarında Modal PopUp Oluşturma
Core Mvc Uygulamalarında Sunucuya Dosya Yükleme
Core Mvc Projesinde Tuple Nesneleri Post Etme ve Yakalama İşlemleri
Visual Studio 2022 Programında Asp.Net Web Application Şablonu Görünmüyor Hatasını Düzeltme
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama8
Core Mvc Uygulamalarında Validation İşlemleri
Core Mvc Projesinde Kullanıcıdan Farklı Veri Alma Yöntemlerini Kullanarak Toplama İşlemini Gerçekleştirme
Core Mvc Projelerinde Kullanılan Tag Helper Kütüphanesi ve Özellikleri
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama2
SqLite Programında Uyeler Tablosuyla İlgili Tüm İşlemleri Gerçekleştiren c# Web Uygulaması
Core Mvc Uygulamasında Sanal Data Kullanarak Personel Bilgilerini İşleyen Web Projesi Oluşturma3
Core Mvc Projelerinde Input Tag Helper Kullanımı
Asp.Net Uygulamalarında Repeater Kontrolü
Asp.Net Uygulamalarında ValidationSummary İşlemi